springcloud之Zuul初识篇—过滤器概述

通过Zuul的路由功能实现请求转发,转发前需要对请求进行鉴权、限流等操作以及返回客户端请求前对返回值进二次处理等使用Zuul的过滤器来实现。

过滤器类型

  • pre:最先执行,限流、黑名单、鉴权等在该类过滤器中处理
  • route:在此执行转发到哪一个具体的服务(ribbon功能在此实现)
  • post:业务服务执行完成后执行,封装返回参数、添加返回信息(如:token)等再此操作
  • error:上述三种过滤器报异常时执行该类过滤器

简示图:

每种过滤器根据filterOrder来控制执行的顺序,数值越小越早执行,通过filterType定义过滤器类型

zuul自带的过滤器最小值为-3,操作限流、黑名单等操作设置filterOrder时可小于-3,达到优先执行限流、黑名单过滤的目的。