網關 zuul 與 spring-cloud gateway的區別


zuul1與spring-cloud-gateway的區別
Zuul:
是netflix公司的項目,本質上是web servlet,基於JavaEE Servlet技術棧,使用阻塞API,處理的是http請求,沒有提供異步支持,不支持任何長連接,比如websocket。

依賴:

<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-zuul</artifactId> </dependency> 

yml配置:

server:
port: 10000
spring:
application:

name: user-service-zuul

eureka:
instance:

prefer-ip-address: true ip-address: 127.0.0.1

client:www.sangpi.com

register-with-eureka: true service-url: defaultZone: 

zuul:
routes:

zuul-path: path: /zuul-path/**

連接:

spring-cloud-gateway:

Spring Boot和Spring Webflux提供的Netty底層環境,不能和傳統的Servlety游戲容器一起使用,也不能打包成一個WAR包,使用非阻塞API,支持websocket。

依賴:

<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-gateway</artifactId> </dependency> 

yml配置:

應用名稱

spring:
application:

name: ticket-gateway 

cloud:

nacos: discovery: server-addr: localhost:8848 gateway: routes: - id: user-route uri: lb://user # 負載均衡方式訪問user服務 predicates: # 匹配條件 - Path=/api/user/** filters: - StripPrefix=2 

端口

server:
port: 10000

連接:地址/請求路徑?參數

watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=
zuul1與spring-cloud-gateway的區別:

1、gateway對比zuul多依賴了spring-webflux,內部實現了限流、負載均衡等,擴展性也更強,但同時也限制了僅適合於Spring Cloud套件。
zuul則可以擴展至其他微服務框架中,其內部沒有實現限流、負載均衡等。
  
2、zuul僅支持同步,
 gateway支持異步。

3、gateway線程開銷少,支持各種長連接、websocket,spring官方支持,但運維復雜,
zuul編程模型簡單,開發調試運維簡單,有線程數限制,延遲堵塞會耗盡線程連接資源。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM