一、zuul1.x
二、gateway
基于异步非阻塞进行开发
1)动态路由:能够匹配任何请求属性
2)可以对路由指定Predicate(断言)和Filter(过滤器);
3) 集成Hystrix的断路器功能
4)请求限流;支持路径重写
三、区别
1、Zuul1.x,基于阻塞I/O的api Gateway
2、Zuul1.x基于Servlet2.5使用非阻塞架构它不支持长连接(如WebSocket)Zuul的设计模式和Nginx较像,每次I/O操作都是从工作线程中选择一个执行,请求线程被阻塞到工作线程完成,但是差别是Nginx 用C++实现,Zuul用Java实现,而JVM本身会有第一次加载较慢的情况,使得Zuul的性能相对较差
3、Zuul2.x理念更先进,想基于Netty 非阻塞和支持长连接,但SpringCloud 目前还没有整合.Zuul2.x的性能较Zuul1.x有较大提升在性能方面,根据官方提供的基准测试,Spring Cloud Gateway 的RPS(每秒请求数)是Zuul的1.6倍
4、Spring Cloud Gateway 建立在Spring Framework 5、Project Reactor 和Spring Boot 2之上,使用非阻塞Apl
5、Spring Cloud Gateway i 还支持WebSocket ,并且与Spring 紧密集成拥有更好的开发体验