【JAVA】网关的管理原理和微服务的Interceptor区分

1. 网关是怎么区分要管理的服务?

网关是通过 application.yml 里的路由配置 来区分的,比如:

yaml

复制代码
spring:
  cloud:
    gateway:
      routes:
        # APP端网关的路由,只转发到APP相关服务
        - id: app-search
          uri: lb://leadnews-search
          predicates:
            - Path=/api/search/**
        # 自媒体网关的路由,只转发到自媒体相关服务
        - id: wemedia-news
          uri: lb://leadnews-wemedia
          predicates:
            - Path=/api/wemedia/**

微服务里的拦截器是怎么生效的?

你在 search-service 里写的 WebMvcConfig

java

运行

复制代码
registry.addInterceptor(new AppTokenInterceptor()).addPathPatterns("/**");
  • 这个拦截器只对进入 search-service 的请求生效
  • 不管请求是从哪个网关转过来的,只要进了 search-service,就会走这个拦截器
  • 其他微服务(比如 user-service)有自己的 WebMvcConfig,只拦截自己的请求
相关推荐
豆瓣鸡9 分钟前
算法日记 - Day3
java·开发语言·算法
萧瑟余晖25 分钟前
Java深入解析篇九之NIO详解
java·网络·nio
不在逃避q25 分钟前
Trae/Vs Code/Cursor命令行无法跑npm命令
前端·arcgis·npm
夏殇之殁40 分钟前
包中创建自定义列表项。 . 使用自定义列表项进行数据绑定 . 将天气预报数据保存到本地内存表,通过LiveBindings进行显示。 ...
服务器·前端·javascript
The Chosen One9851 小时前
高进度算法模板速记(待完善)
java·前端·算法
陈随易1 小时前
MoonBit抓包模块pcap,查看电脑的每一次联网通信
前端·后端·程序员
我不管我就要叫小猪1 小时前
嵌入式Linux----网络通信
linux·运维·服务器
泡沫冰@1 小时前
ECS 的介绍和使用
linux·服务器·网络
新中地GIS开发老师2 小时前
WebGIS开发学生作品|低空航天管理与航线规划系统
前端·javascript·webgis·三维gis开发
土星云SaturnCloud2 小时前
抽水蓄能设备智慧运营:基于土星云边缘计算实现机组全生命周期预测性维护
服务器·人工智能·ai·边缘计算