24 | 为什么微服务架构少不了微服务网关?
大型微服务应用中的多层网关
- 深入了解
- 翻译
- 解释
- 总结
Spring Cloud Gateway作为微服务架构中的重要组件,在网关服务中扮演着关键角色。与传统的Nginx网关不同,Gateway作为更底层的微服务网关,连接外部Nginx网关和内部微服务系统,具有高可扩展性和高度可定制化的优势。它能够轻松获取所有服务节点的变动,并提供丰富的内置谓词和过滤器,实现复杂的路由规则和请求处理。除了路由功能外,Gateway还可以挂载诸如限流等功能。在实际应用中,需要注意将Gateway作为内部服务治理使用,而对外交给高性能网关如Nginx来处理。总的来说,Gateway为系统提供了灵活、可扩展的网关服务,是微服务架构中不可或缺的重要组件。
《Spring Cloud 微服务项目实战》,新⼈⾸单¥59
全部留言(10)
- 最新
- 精选
- BOB针对路由的访问鉴权可以放在微服务网关吗?
作者回复: 鉴权通常是专门的auth-serv去实现,不过触发调用的地方是可以放在网关层的。当然了,也可以自己编写一个infra组件封装这个调用,并放在微服务client端做统一拦截,两种方法都行
2022-02-098 - peter请教老师两个问题: Q1:“可扩展”和“可伸缩”的区别?有的文章把“可扩展”和“可伸缩”当做两个不同的概念来讲解,但我总觉得这两个概念是一回事,请问它们的主要区别是什么? Q2:老师能联系极客的编辑建立一个学习群吗? 老师忙,可以不用进群,但读者可以相互学习。
作者回复: Q1: 看个人习惯了,可伸缩一般用来形容集群弹性,快速扩容缩容,峰值流量的时候弹出算力。可扩展我一般形容微观的层面,比如框架的具体扩展点等等。 Q2:好像平台有个要求是讲师不能私拉学员进群,大家可以留言区继续愉快吹水
2022-02-0724 - rrbbt老师,如果用了gateway微服务网关,是不是就不需要loadbalancer或者ribbon来做客户端的负载均衡了?因为服务端的请求都是落到gateway上,而不是直接调用了
作者回复: 还是需要的哈,举个例子,当你自己的微服务访问其他微服务的时候,这时候服务请求就不经过gateway绕一层了,通常是直连对方服务,那这个时候还是需要客户端负载均衡组件发挥作用
2023-06-27归属地:山东 - 张虎请教一下老师,你的图画的很溜,是什么画图工具?
作者回复: 我画得图是鬼画符,编辑妹子用他们的黑魔法重新画的额。 此处手动@编辑妹子分享下使用啥工具画得
2022-04-11 - 易燃易爆闻一多突然困惑的问题,想请教下老师。 nacos中同一个服务多个实例实现负载均衡。 原理是不是 通过ribbon来做权重计算后。将计算的结果和服务实例信息推送到client的nameservice中。然后feign发起请求时候也走的ribbon的loadbalance做到负载均衡的效果呢?
作者回复: 我们的实战项目用loadbalancer替换了ribbon,虽然两者不是同一个组件,但都是client端的负载均衡器,feign的负载均衡正是借助这个client端组件做分发的。原理是,service通过服务发现获取到的目标服务list,在feign发起调用之前,利用负载均衡器从这个list中挑选一台目标服务器。我们在实现的时候没有加入权重计算,但实现权重其实很简单,比如nacos里可以通过metadata配置权重,然后本地自定义一个负载均衡策略,将权重纳入计算就好了。 不过loadbalancer组件讲真,没有ribbon功能强大。
2022-03-10 - Geek_e93c48问个问题,could实战项目姚老师啥时候结课?(迫不急的催更中)
编辑回复: 3月中旬更新完毕~
2022-02-07 - 6点无痛早起学习的和尚网关分为:入口网关和出口网关。 入口网关: 1. 提供客户端统一的接入地址 2. 服务治理:熔断、限流、流量控制、分流 3. 客户端的认证和授权 4. 黑白名单 5. 做日志的记录 出口网关:依赖外部的第三方系统,比如做支付,就需要外部的渠道 对调用外部的 API 做统一的认证、授权、审计、访问控制、回调。2022-02-1616
- 张申傲- Nginx:外部流量网关。 Gateway:内部微服务业务网关,更类似BFF的角色。 - 微服务网关的使用场景有很多,包括限流、鉴权、加解密、请求的路由转发等等。2022-06-294
- 铅华可以把微服务的接口权限鉴权挂载到gateway的功能上2022-10-09归属地:广东2
- 扶幽仙哥,文章里面的图画的很漂亮,请教下是用什么工具画的呀?2024-03-08归属地:湖北