gateway與zuul區別
最佳答案 內部實現不同、支援非同步不同、框架設計的角度不同、效能不同。1、內部實現不同:gateway對比zuul多依賴了spring-webflux,在spring的支援下,功能更強大,內部實現了限流、負載均衡等,但同時也限制了僅適合於Spring Cloud套件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暫時還沒有整合計劃。