Spring Cloud快速入门(九):路由网关 - Gateway

本文介绍了Spring Cloud Gateway作为Zuul的替代者,其优点包括性能强大、功能丰富和设计优雅。文章详细讲解了Gateway的搭建,通过pom.xml和application.yml配置,并探讨了其内置断言和过滤器的使用,如基于DateTime、RemoteAddr、Cookie、Header、Host、Method、Path、Query和Weight的断言,以及RewritePath、StripPrefix、SetStatus和SetResponseHeader等过滤器。此外,还讨论了Spring Cloud和Sentinel的限流策略,以及Gateway的高可用性方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一:Zuul的缺点

  • Zuul 1.0性能不够好,Zuul 2.0 最后虽然开源了,Spring Cloud 并没有把2.0集成进来而是推出自家的Gateway组件来替代Zuul 1.0。
  • Zuul不支持长连接如websocket。
  • Zuul每有一个请求就会分配一个线程,该线程会从头到尾一直到该请求结束,执行接口期间这个线程一直不会释放,当请求多的时候导致Zuul不能接收新的请求。同步阻塞式Servlet,效率没有异步的高。
  • Spring Cloud在高版本中已经不建议使用Zuul了。

由于以上原因Zuul可能会被逐渐淘汰,而是使用Spring Cloud Gateway来代替。

二:Gateway优缺点

2.1 优点

  • 性能强劲:是第一代Zuul的1.6 倍。
  • 功能强大:内置了很多使用的功能,如转发、监控、限流。
  • 设计优雅,容易扩展。

2.2 缺点

  • 其实现依赖于Netty与WebFlux,不是传统的Servlet编程模型,学习成本高。
  • 不能将其部署到Tomcat、Jetty等Servlet容器,所以不能引入Spring Web,只能打成jar包执行。
  • 需要Spring Boot 2.0及以上的版本才支持。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

风流 少年

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值