Zuul和Gateway对比
Zuul1.x使用bio的连接方式,基本已淘汰Zuul2特性身份验证和安全性—识别每个资源的身份验证要求,并拒绝不满足这些要求的请求。洞察和监控-跟踪边缘的有意义的数据和统计数据,以便为我们提供准确的生产视图。动态路由-根据需要将请求动态路由到不同的后端群集。压力测试-逐渐增加到集群的流量以评估性能。减载-为每种类型的请求分配容量,并删除超过限制的请求。静...
·
Zuul1.x
使用bio的连接方式,基本已淘汰
Zuul2
特性
- 身份验证和安全性—识别每个资源的身份验证要求,并拒绝不满足这些要求的请求。
- 洞察和监控-跟踪边缘的有意义的数据和统计数据,以便为我们提供准确的生产视图。
- 动态路由-根据需要将请求动态路由到不同的后端群集。
- 压力测试-逐渐增加到集群的流量以评估性能。
- 减载-为每种类型的请求分配容量,并删除超过限制的请求。
- 静态响应处理-直接在边缘构建一些响应,而不是将它们转发到内部集群
- 多区域弹性-跨AWS区域路由请求,以使ELB使用多样化,并使我们的优势更接近我们的成员
内部架构
组合用法
- Hystrix用于将调用打包到我们的起源,这允许我们在出现问题时减少并优先处理通信量
- Ribbon是Zuul发出的所有出站请求的客户端,它提供有关网络性能和错误的详细信息,并处理软件负载平衡以实现均匀的负载分配
- Turbine实时聚合细粒度指标,以便我们能够快速观察和应对问题
- Archaius处理配置并提供动态更改属性的能力
Gateway
特性
- 基于SpringFramework5、ProjectReactor和SpringBoot2.0构建
- 能够在任何请求属性上匹配路由。
- 谓词和筛选器特定于路由。
- 集成Hystrix断路器。
- 集成SpringCloud的发现客户端
- 易于编写谓词和筛选器
- 请求速率限制
- 路径重写
内部架构
对比
限流
Zuul2:可通过配置文件或者filter实现
Gateway:可对IP、用户、集群进行限流,并提供扩展接口
鉴权
Zuul2:filter中代码实现
Gateway:普通鉴权、auth2.0
监控
Zuul2:filter中代码实现
Gateway:Gateway Metrics Filter实现
易用性
Zuul2:参考较少
Gateway:简单易用
可维护性
Zuul2:可维护性差
Gateway:基于spring系列维护性强
更多推荐
已为社区贡献19条内容
所有评论(0)