663 字
约 2 分钟
25
Gateway 网关:微服务中的统一入口
Gateway 网关:微服务中的统一入口
在微服务架构中,一个系统通常会拆分成很多服务,例如:
用户服务
订单服务
商品服务
支付服务
如果客户端直接调用这些服务,不仅地址难管理,权限、日志、限流等功能也会变得非常分散。
这时候就需要 Gateway 网关。
一、什么是 Gateway 网关?
Gateway 可以理解成:
整个微服务系统的统一入口。
客户端的请求不会直接访问具体的微服务,而是先经过 Gateway,再由 Gateway 将请求转发给对应的服务。
例如:
客户端
↓
Gateway
↓
订单服务 / 用户服务 / 商品服务
这样客户端只需要知道 Gateway 的地址,不需要关心后面到底有多少个微服务。
二、路由转发
Gateway 最核心的功能就是路由转发。
例如:
/user/**
转发到用户服务。
/order/**
转发到订单服务。
也就是说,Gateway 会根据请求地址,判断这个请求应该交给哪个微服务处理。
三、负载均衡
一个微服务可能会部署多个实例:
user-service
├── 192.168.1.10:8081
├── 192.168.1.11:8081
└── 192.168.1.12:8081
Gateway 可以配合注册中心,在多个实例之间分配请求。
这样可以避免所有请求都集中到一台服务器上。
四、统一处理公共逻辑
Gateway 还可以统一处理很多公共功能,例如:
- 权限校验
- 日志记录
- 请求过滤
- 限流
- 熔断
- 跨域处理
这些逻辑不需要每个微服务重复实现。
不过具体的用户登录认证,也可以交给独立的认证服务完成。
五、为什么需要 Gateway?
如果没有 Gateway:
客户端
├── 调用户服务
├── 调订单服务
├── 调商品服务
└── 调支付服务
客户端需要知道所有服务地址。
有了 Gateway:
客户端
↓
Gateway
↓
各个微服务
整个系统的入口就统一了,也更加方便管理。
六、总结
Gateway 可以简单理解成:
微服务系统的大门。
所有请求先经过 Gateway,再由 Gateway 转发到具体服务。
它主要负责:
统一入口、路由转发、负载均衡、请求过滤、限流熔断等功能。
所以在微服务架构中,Gateway 通常是非常重要的一层。
Gateway 网关:微服务中的统一入口
https://clxhxhhr.top/posts/2936/ 评论
0 条
还没有评论,先写一条吧。