Spring Cloud Gateway 是?Spring Cloud Finchley?版推出來的新組件洲拇,用來代替服務網(wǎng)關:Zuul奈揍。
那 Spring Cloud Gateway 和 Zuul 都有哪些區(qū)別呢,咱們來比較一下赋续。
1男翰、開源組織
Spring Cloud Gateway 是 Spring Cloud 微服務平臺的一個子項目,屬于 Spring 開源社區(qū)纽乱,依賴名叫:spring-cloud-starter-gateway蛾绎。
https://spring.io/projects/spring-cloud-gateway
Zuul 是 Netflix 公司的開源項目,Spring Cloud 在 Netflix 項目中也已經(jīng)集成了 Zuul鸦列,依賴名叫:spring-cloud-starter-netflix-zuul租冠。
https://github.com/Netflix/zuul
2、底層實現(xiàn)
https://stackoverflow.com/questions/47092048/how-is-spring-cloud-gateway-different-from-zuul
據(jù) Spring Cloud Gateway 原作者的解釋:
Zuul構建于 Servlet 2.5薯嗤,兼容 3.x顽爹,使用的是阻塞式的 API,不支持長連接骆姐,比如 websockets镜粤。另外
Spring Cloud Gateway構建于 Spring 5+,基于 Spring Boot 2.x 響應式的玻褪、非阻塞式的 API肉渴。同時,它支持 websockets带射,和 Spring 框架緊密集成同规,開發(fā)體驗相對來說十分不錯。
3窟社、性能表現(xiàn)
這個沒什么好比的捻浦,要比就和 Zuul 2.x 比,Zuul 2.x 在底層上有了很大的改變桥爽,使用了異步無阻塞式的 API,性能改善明顯昧识,不過現(xiàn)在 Spring Cloud 也沒集成 Zuul 2.x钠四,所以就沒什么好比的。
如何選擇?
本文說的 Zuul 指 Zuul 1.x缀去,Netflix 早就發(fā)布了最新的 Zuul 2.x侣灶,但 Spring Cloud 貌似沒有整合計劃,棧長看了下目前最新的包缕碎,整合的還是 Zuul 1.x褥影。
據(jù)了解,正是因為 Zuul 2.x 的不斷跳票咏雌,Spring Cloud 才釜底抽薪推出了自己的服務網(wǎng)關:Spring Cloud Gateway凡怎,棧長看了下,使用起來比 Zuul 更簡單赊抖,配置更方便统倒,所以說選 Spring Cloud Gateway 沒錯,畢竟是 Spring Cloud 親兒子氛雪,不會始亂終棄房匆。
關注Java技術棧微信公眾號,棧長將繼續(xù)分享 Spring Cloud Gateway 的實戰(zhàn)教程报亩,公眾號第一時間推送浴鸿,持續(xù)關注。在公眾號后臺回復:cloud弦追,獲取棧長整理的更多的 Spring Cloud 教程岳链,都是實戰(zhàn)干貨,以下僅為部分預覽骗卜。
Spring Cloud 最新 Finchley 版本踩坑
Spring Cloud 多版本如何選擇
Spring Cloud 是什么宠页,和 Dubbo 對比
Spring Cloud 注冊中心高可用搭建
Spring Cloud Eureka 自我保護機制
……
如果你對編程感興趣或者想往編程方向發(fā)展,可以關注微信公眾號【筑夢編程】寇仓,大家一起交流討論举户!小編也會每天定時更新既有趣又有用的編程知識!