本文主要是介绍Zuul 的介绍,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
在介绍 Zuul 可以提供的功能之前,请大家先考虑一个问题:
微服务系统中往往包含很多个功能不同的子系统或微服务,那么,外部应用怎样去访问各种各样的微服务呢?这也是 Zuul 所要解决的一个主要问题。
在微服务架构中,后端服务往往不直接开放给调用端,而是通过一个服务网关根据请求的url,路由到相应的服务,即实现请求转发,效果如下图所示。
Zuul 提供了服务网关的功能,可以实现负载均衡、反向代理、动态路由、请求转发等功能。Zuul 大部分功能都是通过过滤器实现的,Zuul 中定义了四种标准的过滤器类型,同时,还支持自定义过滤器(课程中实现了两个自定义过滤器,用来记录访问延迟)。这些过滤器的类型也对应于请求的典型生命周期,如下图所示。
-
pre:在请求被路由之前调用
-
route:在路由请求时被调用
-
post:在 route 和 error 过滤器之后被调用
-
error:处理请求时发生错误时被调用
这篇关于Zuul 的介绍的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!