Zuul 路由网关
大约 1 分钟
Spring Cloud Zuul 是 Spring Cloud Netflix 子项目的核心组件之一,可以作微服务架构中的 API 网关使用, 支持动态路由
与过滤
功能。
API 网关为微服务架构中的服务提供了统一的访问入口,客户端通过 API 网关访问相关服务。 API 网关的定义类似于设计模式中的门面模式
, 它相当于整个微服务架构中的门面,所有客户端的访问都通过他来进行路由及过滤。 它实现了请求路由
、负载均衡
、校验过滤
、服务容错
、服务聚合
等功能。
Zuul 包含了对请求的路由
和过滤
两个最主要的功能:
其中路由功能负责将外部请求转发到具体的微服务实例上,是实现外部访问统一入口的基础,而过滤功能 则负责对请求的处理过程进行干预,是实现请求校验、服务聚合等功能的基础。 Zuul 和 Eureka 进行整合,将 Zuul 自身注册为 Eureka 服务治理下的应用,同时从 Eureka 中获取其他微服务的消息, 即访问微服务都是通过 Zuul 跳转后获得。