Gateway 特性

Spring Cloud Gateway 具有如下特性:

基于Spring Framework ,Project Reactor 和 Spring Boot 2.0 进行构建;
可以对路由指定 Predicate (断言) 和 Filter (过滤器);
集成Hystrix的断路器功能;
集成 Sring Cloud 服务发现功能;
易于编写的 Predicate(断言) 和 Filter(过滤器);
请求限流功能;
支持路径重写

Spring Cloud Gateway 与 Zuul的区别

在Spring Cloud Finchley 正式版之前,SpringCloud 推荐的网关是 Netfilx 提供的 Zuul:

1.Zuul 1.x ,是一个基于阻塞I/O的 API Gateway

2.Zuul 1.x 基于Servlet 2.5使用阻塞架构,它不支持任何长连接(如WebSocket)Zuul 的设计模式和Nginx较像,每次I/O操作都是从工作线程中选择一个执行,请求线程被阻塞到工作线程完成,但是差别是Nginx 用C++实现的,Zuul 用 Java 实现的,而JVM 本身会有第一次加载较慢的情况,使得Zuul的性能相对较差。

  1. Zuul 2.x 理想更先进,想基于Netty非阻塞和支持长连接,但SpringCloud目前还没有整合。Zuul 2.x的性能较于Zuul 1.x 有很大提升,在性能层面,根据官方提供的基准测试,Springcloud Gateway 的 RPS(每秒请求数) 是 Zuul 的 1.6倍。

  2. Springcloud Gateway 建立在 Spring Framework 5, springboot 2 和Project Reactor 之上,使用非阻塞API。

  3. Springcloud Gateway 还支持 WebSocket,并且与Spring紧密继承拥有更好的开发体验

猜你喜欢

转载自www.cnblogs.com/nineberg/p/12661098.html