CS-Notes 学习笔记
面试常问Java 后端 · 分布式与消息队列

微服务中的网关有什么作用?为什么鉴权常放在网关?

先自己想一想,再看参考要点

参考要点

  • 网关是所有外部请求的统一入口,负责路由(按路径转发给对应的服务)、鉴权、限流、日志和跨域这些每个服务都需要的处理
  • Spring Cloud Gateway 中 uri 写成 lb://服务名,从注册中心取出实例并负载均衡
  • 网关校验令牌后把用户 ID 放进请求首部,用 set 覆盖客户端自己带的值,下游服务直接使用,不再重复校验
  • 下游服务信任这个首部,所以它们不能对外暴露,只能经过网关访问
  • 网关与 Nginx 不冲突,Nginx 通常在最外层负责 TLS 和多个网关实例之间的负载均衡
在学习站中自测这道题

学习站:先用面试题自评定级,按水平和面试日期排出每天的计划,自评过的题按间隔复习。免费、无需注册,记录只保存在自己的浏览器中。