gateway与zuul区别


gateway与zuul区别

文章插图
【gateway与zuul区别】内部实现不同、支持异步不同、框架设计的角度不同、性能不同 。
内部实现不同:gateway对比zuul多依赖了spring-webflux , 在spring的支持下 , 功能更强大 , 内部实现了限流、负载均衡等 , 扩展性也更强 , 但同时也限制了仅适合于Spring Cloud套件zuul则可以扩展至其他微服务框架中 。
是否支持异步:zuul仅支持同步gateway支持异步 。理论上gateway则更适合于提高系统吞吐量(但不一定能有更好的性能) , 最终性能还需要通过严密的压测来决定 。
框架设计的角度:gateway具有更好的扩展性 , 并且其已经发布了2.0.0的RELESE版本 , 稳定性也是非常好的 。
性能:WebFlux模块的名称是spring-webflux , 名称中的Flux来源于Reactor中的类 Flux 。Spring webflux 有一个全新的非堵塞的函数式Reactive Web框架 , 可以用来构建异步的、非堵塞的、事件驱动的服务 , 在伸缩性方面表现非常好 。使用非阻塞API 。Websockets得到支持 , 并且由于它与Spring紧密集成 , 所以将会是一个更好的 开发 体验 。Zuul1.x , 是一个基于阻塞io的API Gateway 。Zuul已经发布了Zuul 2.x , 基于Netty , 也是非阻塞的 , 支持长连接 , 但Spring Cloud暂时还没有整合计划 。

    经验总结扩展阅读