【微服务|笔记】网关

142 阅读1分钟

image-20210328233358211.png

网关(gateway)

作用

  • 路由转发:接收外界请求,并将请求转发到后端服务
  • 过滤器:网关服务可完成一系列横向的功能。比如:鉴权,限流,请求监控,请求日志等

需要网关的理由

实现:

以权限控制为例,实现横切功能三种方式:

  1. 每个服务都实现一遍
  2. 实现一个进行权限控制的公共服务,每个服务都引用公共服务
  3. 在网关服务中完成请求拦截并进行鉴权
分析:

第一种:容易导致代码冗余

第二种:每个服务都引入公共服务或包,将导致代码量增加;各服务与公共服务的耦合性太高,一旦公共服务修改时,所有有引用的服务都需要调整

第三种:仅在网关服务中实现鉴权功能,修改鉴权功能的话后端服务无须关心

综上所述,这就是为什么我们需要微服务需要网关服务

技术选型:

  • 开发语言:
  • 微服务基础框架:
  • 网关基础组件:
  • 服务注册中心:Etcd 、Consul
  • 权限校验:、JWT
  • API监控:
  • API统一日志收集:
  • 压力测试:Jmeter

参考资料