SpringCloud Zuul网关的简单理解

Posted expiator

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringCloud Zuul网关的简单理解相关的知识,希望对你有一定的参考价值。

Zuul网关功能

请求路由、服务路由、请求过滤

请求路由

参数配置如下所示,所有能够配置path规则的请求,都会被zuul网关转发到对应的url上。

zuul.routes.user-service.path=/user-service/**  
zuul.routes.user-service.url=http://178.69.1.39:9104/ 

服务路由

参数配置如下所示,zuul会对服务user-service进行路由,所有能够配置path规则的请求,都会被zuul网关转发到serivce-id服务上。

zuul.routes.user-service.path=/user-service/**  
zuul.routes.user-service.serviceId=user-service/**  
zuul.routes.user-service.strip-prefix=false

Zuul内置Hystrix和Ribbon

Zuul内置Hystrix和Ribbon模块的依赖,所以zuul天生就拥有线程隔离和断路器的自我保护功能,以及对服务调用的客户端负载均衡功能。
当使用path与url的映射关系来配置路由规则的时候,对于路由转发的请求不会采用hystrixCommand来包装,所以这类请求没有线程隔离和断路器的保护,并且也不会有负载均衡的能力。
因此,在使用zuul的时候尽量使用path和serviceId的组合(也就是服务路由)来进行配置,这样不仅可以保证api网关的健壮和稳定,也能用到ribbon的客户端负载均衡功能。
Zuul配置Hystrix和Ribbon,详情见:
https://www.cnblogs.com/expiator/p/10753746.html

请求过滤

待补充。
参考资料:
《SpringCloud微服务实战》

以上是关于SpringCloud Zuul网关的简单理解的主要内容,如果未能解决你的问题,请参考以下文章

史上最简单的SpringCloud教程 | 第五篇: 路由网关(zuul)

SpringCloud-路由网关(Zuul)

史上最简单的SpringCloud教程 | 第五篇: 路由网关(zuul)(Finchley版本)

SpringCloud (Finchley版本)教程:路由网关(zuul)

微服务之API网关 kong 使用场景之路由功能

springcloud 网关过滤器Zuul Filter