30.Gateway网关过滤器链执行顺序

news/2024/5/20 21:04:21

请求进入网关会碰到三类过滤器:

1.当前路由过滤器(属于GatewayFilter)

2.DefaultFilter(属于GatewayFilter)

3.GlobalFilter(属于GlobalFilter)

合并到一个过滤器链集合中,排序后依次执行每个过滤器。

 GatewayFilterAdapter中有一个GlobalFilter, 适配器模式,如上图所示,所以可以看做GlobalFilter也是属于GatewayFilter的。所以上面三类过滤器可以放入一个集合中。

1.每个过滤器都必须指定一个int类型的order值,order值越小,优先级越高,执行顺序越靠前。

2.GlobalFilter通过实现Ordered接口,或者添加@Order注解来指定order值,由程序员自己指定。

3.路由过滤器和defaultFilter的order由spring指定,默认是按照声明顺序从1递增

4.如果三种类型的过滤器的order值一样的时候的执行顺序是:defaultFilter-> 路由过滤器 -> GlobalFilter


http://www.mrgr.cn/p/36755062

相关文章

SpringBoot项目启动,传参有哪些方式?

SpringBoot项目启动,传参有哪些方式? 1.Spring级别的参数 直接在启动 Spring Boot 应用的命令行中使用 -- 后跟参数名和值的方式来传递参数。 记住:一般是对于Spring Boot应用特有的配置参数,确保它们遵循Spring Boot的配置属性命…

数字旅游引领智慧化浪潮:科技创新重塑旅游体验,智慧服务打造旅游新高度

在科技飞速发展的今天,数字旅游正以其独特的魅力引领着智慧化浪潮,深刻改变着旅游行业的面貌。数字技术的广泛应用,不仅为旅游行业注入了新的活力,也极大地提升了旅游体验的品质。科技创新与智慧服务的融合,正推动着旅…

线性表--单链表代码题

数据结构 线性表--单链表练习题/****************************************************************************** file name: 2024-04-27_reverseLinkdemo.c* author : tongyaqi1110@163.com* date : 2024-04-27* function : 实现单链表的逆序* note : None* Copy…

ZYNQ NVME高速存储之EXT4文件系统

前面文章分析了高速存储的各种方案,目前主流的三种存储方案是,pcie switch高速存储方案,zynq高速存储方案,fpga高速存储方案。虽然三种高速存储方案都可以实现高速存储,但是fpga高速存储方案是最烂的,fpga…

不知什么插件开发的

撸起袖子加油干!!!

centos7使用源码安装方式redis

安装编译源码的工具gcc yum install -y gcc下载源码 源码下载地址 https://download.redis.io/releases/ 注意事项 不建议安装最新版本redis,所以我这里选择6.2.6版本 下载 wget https://download.redis.io/releases/redis-6.2.6.tar.gz解压 tar -zxvf redis-…

zabbix6.4告警配置(短信告警和邮件告警),脚本触发

目录 一、前提二、告警配置1.邮件告警脚本配置2.短信告警脚本配置3.zabbix添加报警媒介4.zabbix创建动作4.给用户添加报警媒介 一、前提 已经搭建好zabbix-server 在需要监控的mysql服务器上安装zabbix-agent2 上述安装步骤参考我的上篇文章:通过docker容器安装za…

R语言的初级学习

终极目标是SCI中的分析内容 数据挖掘 R 学习之路-1 编程语言的代表 生物医学领域(bioconductor)生物医学的宝库 可视化(就是展示数据的图) 基于自己对数据的理解把科研问题转换为编程问题 R project R语言的包库 在使用R的次新版的R语言 2个小时学习基础入门-第一第二本书…

Web前端框架/库/工具

前言 俗话说:前端从步枪(原生js)到了半自动武器(jQuery)并进化为全自动武器(三大框架(angular,react,vue及其生态链))。 常说工欲善其事必先利其…

Mybatis入门——基础操作

介绍 什么是Mybatis?Mybatis是一款优秀的 持久层 框架,用于简化JDBC的开发。Mybatis本是Apache的一个开源项目iBatis,2010年这个项目由apache迁移到了goole code,并且改名为Mybatis,2013年11月迁移到GitHub。 官网:https://mybatis.org/mybatis-3/zh_CN/index.html快速入…

C++必修:类与对象(一)

✨✨ 欢迎大家来到贝蒂大讲堂✨✨ 🎈🎈养成好习惯,先赞后看哦~🎈🎈 所属专栏:C学习 贝蒂的主页:Betty’s blog 1. 面向过程与面向对象 1.1. 面向过程 我们之前学习的C语言就是一种面向过程的语…

vscode侧边栏资源管理器重置

不知道点了哪里,资源管理器侧边栏只剩下一个npm脚本选项卡了,找解决方案找了好久,卸载了vscode都没用,还是因为我的搜索方式不对,最后终于找到了,记录下先 问题图:第一步:按curl + shilt + P 第二步:输入View: Reset View Locations

一文看懂什么是回调函数

文章目录一、什么是回调函数 二、回调示例 三、回调函数的应用场景 四、回调函数的优点 五、回调函数的注意事项一、什么是回调函数回调函数是一种在编程中常见的概念,它是指一个函数作为参数传递给另一个函数,并且在特定事件发生或条件满足时被调用执行的函数。 二、回调示例…

MySQL8.0.22安装

MySQL8.0.22安装及配置(超详细)大家好,今天我们来学习一下 MySQL8.0.22安装及配置,好好看,好好学,超详细的第一步进入MySQL官网下载,如下图所示:第二步进入下载完成后解压到除c盘以外的盘,如下图所示:第三步解压后的目录并没有的my.ini文件,没关系可以自行创建在安装根…

报错import build constraints exclude all Go files in

好久没用fyne突然报错 报错import ...go-gl.. build constraints exclude all Go files in go-gl .. 检查gcc --version正常输出 检查gcc版本正常,路径正常。 尝试解决的方法, 1.重新安装依赖,不行 2.重新配置下载地址,不…

Zephyr sensor子系统学习

一、背景 2023年7月份nRF Connect SDK 2.4.0最新版本,使用的Zephyr V3.3版本。从Zephyr 3.5版本在子系统中加入了sensing子系统。 现在最新的nRF Connect SDK 2.6.0 release支持v3.5.99-ncs1,已经支持sensing子系统 nRF52840现在官方支持两个传感器de…

数据库优化 索引(index)

介绍 索引是帮助数据库高效获取数据的数据结构优缺点: 优点:提高数据查询的效率,降低数据的IO成本。 通过索引列多数据进行排序,降低数据排序的成本,降低CPU消耗缺点:索引会占存储空间。 索引大大提高了查询效率,同时却也降低了insert、update、delete的效率结构 MySql数…

SpringMVC进阶(数据格式化以及数据校验)

文章目录 1.数据格式化1.基本介绍1.基本说明2.环境搭建 2.基本数据类型和字符串转换1.需求分析2.环境搭建1.data_valid.jsp首页面2.Monster.java封装请求信息3.MonsterHandler.java处理请求信息4.monster_addUI.jsp添加妖怪界面5.单元测试 3.保存妖怪信息1.MonsterHandler.java…

什么因素可以影响到代理IP稳定性?爬虫代理IP有哪些作用?

一、什么因素可以影响到代理IP稳定性 代理IP的稳定性受到多种因素的影响,以下是一些主要的因素: 代理IP的质量:不同的代理IP提供商提供的代理IP质量参差不齐,一些低质量的代理IP可能经常出现连接问题或速度慢的情况,…

5、Flink事件时间之Watermark详解

1)生成 Watermark 1.Watermark 策略简介 为了使用事件时间语义,Flink 应用程序需要知道事件时间戳对应的字段,即数据流中的每个元素都需要拥有可分配的事件时间戳。 通过使用 TimestampAssigner API 从元素中的某个字段去访问/提取时间戳。…