【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,只拦截自己的请求
相关推荐
IT_Octopus3 小时前
IntelliJ 本地日志路径自定义:`-DLOG_PATH=./logs` 为什么总“不听话“
java·log4j·intellij-idea
平头哥AI3 小时前
Day 22 _ 包装错误别丢链_%w、errors.Is 与 errors.As
android·服务器·学习·golang·go
长征coder4 小时前
【无标题】
java·性能优化
CharlesYu014 小时前
前端性能优化的第一性原理,是不断缩短“用户发起意图 → 获得可用结果”之间的时间
前端
新时代牛马4 小时前
PCI与PCIe 硬件原理、配置空间/BAR 与 Linux 驱动完整篇:从 LTSSM、TLP 到 ECAM 与probe
java·linux·服务器
Bs_MoneyMagnet5 小时前
基于springboot+vue的医疗健康便民服务平台的设计与实现 源码+文档
java·vue.js·spring boot·后端·spring
平头哥技术团队5 小时前
Day 21 _ 页内锚点_给每段起个 id,目录写 href=_#id_,点一下页面就滚到那一段
前端·html·html5
sunshine22 girl5 小时前
Java学习一 环境配置2 Idea的入门使用和maven配置,项目启动脚本配置
java·maven
有点。6 小时前
*C++哈夫曼树与哈夫曼编码
java·c++·servlet
子兮曰6 小时前
Bun v1.4.1 深度解析:从 Zig 到 Rust,一场 11 天、64 个 AI 代理的语言迁徙
前端·后端·bun