Spring Cloud之Zuul
目录
简介
Zuul中的过滤器
过滤器的执行流程
使用过滤器
route过滤器的默认三种配置
路由到服务
路由到url地址
转发给自己
自定义过滤器
简介
Zuul是Netflix开源的微服务网关,主要功能是路由转发和过滤器,其原理也是一系列filters,这些filters可以帮我们实现以下功能:
- 身份验证和安全性
- 观察和监控
- 动态路由
- 负载均衡
- 静态响应处理
- 路由多样化
Zuul中的过滤器
Zuul一共有四种过滤器,分别是:
pre:在请求被路由之前调用,可利用这种过滤器鉴权。选择微服务,记录日志,限流。
route:在将请求路由到微服务调用,用于构建发送给微服务的请求,并用httpclinet ( 或者ribbon )请求微服务。
post:在调用微服务执行后。可用于添加header,记录日志,将响应发给客户端。
error:在其他阶段发生错误是,走此过滤器。
过滤器的执行流程
使用过滤器
route过滤器的默认三种配置
路由到服务
由RibbonRoutingFilter实现,以下配置表示当匹配到"/test/"路径的请求就转发到test-service服务
zuul:routes:test:path: /test/**serviceId: test-service
路由到url地址
由SimpleHostRoutingFilter实现,以下配置表示当拦截到"/test/csdn"请求时就转发到csdn去,可以在只知道请求路径不知道服务时使用
zuul: routes:test:path: /test/csdnurl: https://www.csdn.net/
转发给自己
由SendForwardFilter实现,url要以forward:开头,表示该请求再次跳转到“/user”
routes:test:path: /test/**url: forward: /user
自定义过滤器
自定义过滤器的使用场景非常广泛,如鉴权、安全认证、灰度发布等场景都可以通过自定义过滤器实现
@Configuration
public class TestFilter extends ZuulFilter {@Overridepublic String filterType() {// 设置过滤类型 FilterConstants.PRE_TYPE FilterConstants.ERROR_TYPE FilterConstants.ROUTE_TYPE FilterConstants.POST_TYPEreturn null;}@Overridepublic int filterOrder() {// 优先级 越小越优先执行return 0;}@Overridepublic boolean shouldFilter() {// 是否需要过滤,true为需要过滤,这里可以加相应的判断条件return false;}@Overridepublic Object run() throws ZuulException {// 具体要实现的业务逻辑return null;}
}
相关文章:
![](https://img-blog.csdnimg.cn/64ccfba157e1495c9677016cb77374c6.png)
Spring Cloud之Zuul
目录 简介 Zuul中的过滤器 过滤器的执行流程 使用过滤器 route过滤器的默认三种配置 路由到服务 路由到url地址 转发给自己 自定义过滤器 简介 Zuul是Netflix开源的微服务网关,主要功能是路由转发和过滤器,其原理也是一系列filters࿰…...
![](https://img-blog.csdnimg.cn/img_convert/a233ee77903c3664d2556486ab281817.png)
为什么要有分布式锁?
Redis避坑指南:为什么要有分布式锁?作者:京东保险 张江涛1、为什么要有分布式锁?JUC提供的锁机制,可以保证在同一个JVM进程中同一时刻只有一个线程执行操作逻辑;多服务多节点的情况下,就意味着有…...
![](https://img-blog.csdnimg.cn/90b4fe544e67473c9163ed8fe25747cb.png)
【Redis】Redis持久化之RDB详解(Redis专栏启动)
📫作者简介:小明java问道之路,2022年度博客之星全国TOP3,专注于后端、中间件、计算机底层、架构设计演进与稳定性建工设优化。文章内容兼具广度深度、大厂技术方案,对待技术喜欢推理加验证,就职于知名金融公…...
![](https://img-blog.csdnimg.cn/6ed83842c0e1487aa9afdf40c000eb0c.png)
Retinanet网络与focal loss损失
参考代码:https://github.com/yhenon/pytorch-retinanet 1.损失函数 1)原理 本文一个核心的贡献点就是 focal loss。总损失依然分为两部分,一部分是分类损失,一部分是回归损失。 在讲分类损失之前,我们来回顾一下二…...
![](https://www.ngui.cc/images/no-images.jpg)
Spring事务的失效场景
事务失效场景 方法用private或final修饰 Spring底层使用了AOP,而AOP的实现方式有两种,分别是JDK动态代理和CGLIB,JDK动态代理是实现抽象接口,CGLIB是继承父类,无论哪种方式,都需要重写方法来进行方法增强,而…...
![](https://www.ngui.cc/images/no-images.jpg)
芯动联科在科创板IPO过会:拟募资10亿元,金晓冬为实际控制人
2月13日,上海证券交易所披露的信息显示,安徽芯动联科微系统股份有限公司(下称“芯动联科”)获得科创板上市委会议审议通过。据贝多财经了解,芯动联科于2022年6月24日在科创板递交招股书。 本次冲刺上市,芯…...
![](https://img-blog.csdnimg.cn/c56dead6e6944057bedd7f08c1ab2130.png)
数据结构之单链表
一、链表的组成 链表是由一个一个的节点组成的,节点又是一个一个的对象, 相邻的节点之间产生联系,形成一条链表。 例子:假如现在有两个人,A和B,A保存了B的联系方式,这俩人之间就有了联系。 A和…...
![](https://www.ngui.cc/images/no-images.jpg)
儿子跟妈妈关系不好怎么办?这里有解决办法!
15岁的男孩子正处于青春期,很多男孩都傲慢自大,听不进去别人的建议,以自己为中心,认为自己能处理好自己的事情,不想听父母的唠叨。母亲面对青春期的孩子也是举手无措,语气不好,会让孩子更叛逆。…...
![](https://img-blog.csdnimg.cn/19c5cca76fb340189f5ff2967ab0cd14.jpeg)
论文投稿指南——中文核心期刊推荐(植物保护)
【前言】 🚀 想发论文怎么办?手把手教你论文如何投稿!那么,首先要搞懂投稿目标——论文期刊 🎄 在期刊论文的分布中,存在一种普遍现象:即对于某一特定的学科或专业来说,少数期刊所含…...
![](https://www.ngui.cc/images/no-images.jpg)
华科万维C++章节练习4_6
【程序设计】 题目: 编程输出下列图形,中间一行英文字母由输入得到。 A B B B C C C C C D D D D D D D C C C C C B B B A 开头空一格,字母间空两格…...
![](https://img-blog.csdnimg.cn/07e1821188f846b19605e78d3bf6e527.jpeg#pic_center)
详解子网技术
一 : Internet地址 Intemet实质上是把分布在世界各地的各种网络如计算机局域网和广域网、数字数据通信网以及公用电话交换网等互相连接起来而形成的超级网络。但是 , 网络的物理地址给Internet统一全网地址带来两个方面的问题: 第一,物理地址是物理网络技术的一种…...
![](https://img-blog.csdnimg.cn/057d821384994fa99dec21752e29db89.png)
chatGTP的全称Chat Generative Pre-trained Transformer
chatGPT,有时候我会拼写为:chatGTP,所以知道这个GTP的全称是很有用的。 ChatGPT全名:Chat Generative Pre-trained Transformer ,中文翻译是:聊天生成预训练变压器,所以是GPT,G是生…...
![](https://img-blog.csdnimg.cn/ae1829a6f92e44529ebfcb90c745b4d5.png)
hive数据存储格式
1、Hive存储数据的格式如下: 存储数据格式存储形式TEXTFILE行式存储SEQUENCEFILE行式存储ORC列式存储PARQUET列式存储 2、行式存储和列式存储 解释: 1、上图左面为逻辑表;右面第一个为行式存储,第二个温列式存储; …...
![](https://img-blog.csdnimg.cn/8a9153d0a4f0479e8c2a4a0ded748f97.png)
mysql数据库备份与恢复
mysql数据备份: 数据备份方式 物理备份: 冷备:.冷备份指在数据库关闭后,进行备份,适用于所有模式的数据库热备:一般用于保证服务正常不间断运行,用两台机器作为服务机器,一台用于实际数据库操作应用,另外…...
![](https://www.ngui.cc/images/no-images.jpg)
《NFL橄榄球》:辛辛那提猛虎·橄榄1号位
辛辛那提猛虎(英语:Cincinnati Bengals),又译辛辛那提孟加拉虎,是一支职业美式橄榄球球队位于俄亥俄州辛辛那提。他们现时为美联北区的其中一支球队,他们在1968年加入美国橄榄球联合会,并在1970…...
![](https://img-blog.csdnimg.cn/0443e10eacc74fe59e75f7d3b680b642.png)
2、线程、块和网格
目录一、线程、块、网格概念二、代码分析2.1 打印第一个线程块的第一线程2.2 打印当前线程块的当前线程2.3 获取当前是第几个线程一、线程、块、网格概念 CUDA的软件架构由网格(Grid)、线程块(Block)和线程(Thread&am…...
![](https://img-blog.csdnimg.cn/img_convert/ec5e452bc2052dcfd3c6fd559494988a.png)
C++ 算法主题系列之贪心算法的贪心之术
1. 前言 贪心算法是一种常见算法。是以人性之念的算法,面对众多选择时,总是趋利而行。 因贪心算法以眼前利益为先,故总能保证当前的选择是最好的,但无法时时保证最终的选择是最好的。当然,在局部利益最大化的同时&am…...
![](https://img-blog.csdnimg.cn/img_convert/c54763d0928b6d70c85a1569af1df41b.png)
请注意,PDF正在传播恶意软件
据Bleeping Computer消息,安全研究人员发现了一种新型的恶意软件传播活动,攻击者通过使用PDF附件夹带恶意的Word文档,从而使用户感染恶意软件。 类似的恶意软件传播方式在以往可不多见。在大多数人的印象中,电子邮件是夹带加载了恶…...
![](https://img-blog.csdnimg.cn/291bf7c56dd2458f8f686bb122e3cd95.png)
【Kubernetes】【二】环境搭建 环境初始化
本章节主要介绍如何搭建kubernetes的集群环境 环境规划 集群类型 kubernetes集群大体上分为两类:一主多从和多主多从。 一主多从:一台Master节点和多台Node节点,搭建简单,但是有单机故障风险,适合用于测试环境多主…...
![](https://www.ngui.cc/images/no-images.jpg)
Python:每日一题之发现环(DFS)
题目描述 小明的实验室有 N 台电脑,编号 1⋯N。原本这 N 台电脑之间有 N−1 条数据链接相连,恰好构成一个树形网络。在树形网络上,任意两台电脑之间有唯一的路径相连。 不过在最近一次维护网络时,管理员误操作使得某两台电脑之间…...
![](https://img-blog.csdnimg.cn/ba151284b53442b1a7b668a13a3d2cb2.png)
C++设计模式(14)——享元模式
亦称: 缓存、Cache、Flyweight 意图 享元模式是一种结构型设计模式, 它摒弃了在每个对象中保存所有数据的方式, 通过共享多个对象所共有的相同状态, 让你能在有限的内存容量中载入更多对象。 问题 假如你希望在长时间工作后放…...
![](https://www.ngui.cc/images/no-images.jpg)
SpringCloud之Eureka客户端服务启动报Cannot execute request on any known server解决
项目场景: 在练习SpringCloud时,Eureka客户端(client)出现报错:Cannot execute request on any known server 问题描述 正常启动SpringCloud的Server端和Client端,结果发现Server端的控制台有个Error提示,如下&#…...
![](https://img-blog.csdnimg.cn/4432500f82534636a2cc3cc9b12f4c24.gif#pic_center)
从零开始搭建kubernetes集群环境(虚拟机/kubeadm方式)
文章目录1 Kubernetes简介(k8s)2 安装实战2.1 主机安装并初始化2.2 安装docker2.3 安装Kubernetes组件2.4 准备集群镜像2.5 集群初始化2.6 安装flannel网络插件3 部署nginx 测试3.1 创建一个nginx服务3.2 暴漏端口3.3 查看服务3.4 测试服务1 Kubernetes简…...
![](https://img-blog.csdnimg.cn/92722005f1464062884b7a21cbb97c2d.png)
【零基础入门前端系列】—表格(五)
【零基础入门前端系列】—表格(五) 一、表格 表格在数据展示方面非常简单,并且表现优秀,通过与CSS的结合,可以让数据变得更加美观和整齐。 单元格的特点:同行等高、同列等宽。 表格的基本语法࿱…...
![](https://img-blog.csdnimg.cn/img_convert/cce9708874fa306e98b669b8959d8f4d.png)
C#开发的OpenRA的只读字典IReadOnlyDictionary实现
C#开发的OpenRA的只读字典IReadOnlyDictionary实现 怎么样实现一个只读字典? 这是一个高级的实现方式,一般情况下,开发人员不会考虑这个问题的。 毕竟代码里,只要小心地使用,还是不会出问题的。 但是如果在一个大型的代码,或者要求比较严格的代码里,就需要考虑这个问题了…...
![](https://www.ngui.cc/images/no-images.jpg)
mulesoft MCIA 破釜沉舟备考 2023.02.14.06
mulesoft MCIA 破釜沉舟备考 2023.02.14.06 1. A company is planning to extend its Mule APIs to the Europe region.2. A mule application is deployed to a Single Cloudhub worker and the public URL appears in Runtime Manager as the APP URL.3. An API implementati…...
![](https://img-blog.csdnimg.cn/02430444e7374f5f9ed8e52020bfb683.png)
Python网络爬虫 学习笔记(1)requests库爬虫
文章目录Requests库网络爬虫requests.get()的基本使用框架requests.get()的带异常处理使用框架(重点)requests库的其他方法和HTTP协议(非重点)requests.get()的可选参数网络爬虫引发的问题(非重点)常见问题…...
![](https://img-blog.csdnimg.cn/21a2bc6ff9804a0fb3dbe5fc3de8f93a.png#pic_center)
Splay
前言 Splay是一种维护平衡二叉树的算法。虽然它常数大,而且比较难打,但Splay十分方便,而且LCT需要用到。 约定 cnticnt_icnti:节点iii的个数 valival_ivali:节点iii的权值 sizisiz_isizi:节点iii的子…...
![](https://img-blog.csdnimg.cn/78dfef7302f24d358ab000c7bf46898c.png)
智能网联汽车ASIL安全等级如何划分
目录一、功能安全标准二、功能安全等级定义三、危险事件的确定四、ASIL安全等级五、危险分析和风险评定六、功能安全目标的分解一、功能安全标准 ISO 26262《道路车辆功能安全》脱胎于IEC 61508《电气/电子/可编程电子安全系统的功能安全》,主要定位在汽车行业&…...
![](https://img-blog.csdnimg.cn/f391fa4f832d48b39fe4657b6a273985.png)
Stable Diffusion 1 - 初始跑通 文字生成图片
文章目录关于 Stable DiffusionLexica代码实现安装依赖库登陆 huggingface查看 huggingface token下载模型计算生成设置宽高测试迭代次数生成多列图片关于 Stable Diffusion A latent text-to-image diffusion model Stable Diffusion 是一个文本到图像的潜在扩散模型ÿ…...
![](https://img-blog.csdnimg.cn/2020032820323972.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQyMTM4NjYy,size_16,color_FFFFFF,t_70#pic_center)
网站备案转移/百度seo高级优化
Ubuntu16.04安装搜狗输入法及快捷区域截图 更新软件列表及软件 官方提供的ubuntu16.04硬盘映像中部分软件列表及软件不是最新的,因此安装好Ubuntu后首先应该更新软件列表及软件。 更新软件列表 sudo apt-get update更新软件 sudo apt-get upgrade安装搜狗输入法…...
![](/images/no-images.jpg)
山东烟台城乡建设学校官方网站/网站推广多少钱
函数组说明:外部应用程序 F4 界面模块。当ABAP 开发者想要自己设计 F4 帮助,不用 SAP 提供的标准值帮助时,可以使用下列函数。 CONVERSION_EXIT_ALPHA_RANGE_ICONVERSION_EXIT_ALPHA_RANGE_OCONVERSION_EXIT_ISOLA_RANGE_ICONVERSION_EXIT_IS…...
![](/images/no-images.jpg)
建设银行官方网站打不开/googleseo优化
参考:https://blog.csdn.net/maweifei/article/details/51221259 # 示例: img_ cv::Mat::zeros(pic_height_, pic_width_, CV_8UC1);Mat不但是一个非常有用的图像容器类,同时也是一个通用的矩阵类。 Mat矩阵(图像容器)创建时CV_8UC1、CV_8U…...
![](https://img-blog.csdnimg.cn/20200430150735507.png)
日照做网站公司/如何设置友情链接
目的 序 新的一年又到了,该跳槽的跳槽了,那跳槽是不是又得面试了,面试中总会问些用不到的。或者有些用到的,但是却当时没说出来。后悔万分,之前被这种问题居然问懵逼了。天天上班写代码,忘记了理论知识。今天补充一下…...
![](https://img-blog.csdnimg.cn/img_convert/614d1a4a9e461cbcf1efb43c298f6a00.png)
wordpress 视频课堂/湖南专业的关键词优化
一、Config配置简介在微服务系统中,服务较多,相同的配置:如数据库信息、缓存、参数等,会出现在不同的服务上,如果一个配置发生变化,需要修改很多的服务配置。spring cloud提供配置中心,来解决这…...
![](https://img-blog.csdnimg.cn/20200705185732864.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM0MTcwNzAw,size_16,color_FFFFFF,t_70)
网站备案迁移/流量推广怎么做
01 回溯算法 回溯算法实际上一个类似枚举的搜索尝试过程,主要是在搜索尝试过程中寻找问题的解,当发现已不满足求解条件时,就 “回溯” 返回,尝试别的路径。回溯法是一种选优搜索法,按选优条件向前搜索,以达…...