springcloud gateway 与zuul1.x

一、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 紧密集成拥有更好的开发体验

原文地址:https://www.cnblogs.com/little-tech/p/13786874.html