Spring Cloud Gateway 与 Zuul 比较

Spring Cloud GatewaySpring Cloud Finchley版推出来的新组件,用来代替服务网关:Zuul

两者区别

开源组织

Spring Cloud GatewaySpring Cloud微服务平台的一个子项目,属于Spring开源社区,依赖名叫:spring-cloud-starter-gateway

参考:https://spring.io/projects/spring-cloud-gateway

1
2
3
4

`Zuul`是`Netflix`公司的开源项目,`Spring Cloud`在`Netflix`项目中也已经集成了`Zuul`,依赖名叫:`spring-cloud-starter-netflix-zuul`

参考:https://github.com/Netflix/zuul

底层实现

参考:https://stackoverflow.com/questions/47092048/how-is-spring-cloud-gateway-different-from-zuul

Spring Cloud Gateway原作者的解释:

Zuul构建于Servlet 2.5,兼容3.x,使用的是阻塞式的API,不支持长连接,比如websockets。另外

Spring Cloud Gateway构建于Spring 5+,基于Spring Boot 2.x响应式的、非阻塞式的API。同时,它支持websockets,和Spring框架紧密集成,开发体验相对来说十分不错。

性能表现

这个没什么好比的,要比就和Zuul 2.x比,Zuul 2.x在底层上有了很大的改变,使用了异步无阻塞式的API,性能改善明显,不过现在Spring Cloud也没集成Zuul 2.x,所以就没什么好比的。

如何选择

本文说的ZuulZuul 1.x,Netflix早就发布了最新的Zuul 2.x,但Spring Cloud貌似没有整合计划,看了下目前最新的包,整合的还是Zuul 1.x

据了解,正是因为Zuul 2.x的不断跳票,Spring Cloud才釜底抽薪推出了自己的服务网关:Spring Cloud Gateway,使用起来比 Zuul 更简单,配置更方便,所以说选Spring Cloud Gateway没错,毕竟是Spring Cloud亲儿子,不会始乱终弃。

Powered by AppBlog.CN     浙ICP备14037229号

Copyright © 2012 - 2021 APP开发技术博客 All Rights Reserved.

访客数 : | 访问量 :