zuul路由网关
zuul作为网关组件,主要用来管理api请求接口(统一对外暴露,负载均衡),身份认证,流量监控等。它是通过servlet来实现的,核心是一系列过滤器,可以在请求的发起跟相应返回阶段进行一系列的处理。 ------------------------------------------------------------------------------------------------------------------------ 原理简介 : 过滤器分类: PRE过滤器:在请求路由到具体的服务之前执行,可以用作安全验证,例如身份验证,参数验证等; ROUTING过滤器:用于将请求路由到具体的微服务实例,默认情况下使用http client进行网络请求; POST过滤器:在请求被路由到微服务后执行,一般用作收集统计信息,及将响应传输到客户端; ERROR过滤器:在其他过滤器发生错误时执行; zuul采用了动态读取、编译和运行这些过滤器。过滤器之间不能直接通信,而是通过RequestContext对象共享数据,每个请求都会创建一个RequestContext对象。zuul请求的生命周期如图: request请求进入zuul网关后,先进入pre 类别的过滤器,进行一系列验证操作或判断,然后交给routing filter进行路由转发