springcloud:3.5测试慢调用熔断降级

 

服务提供者【test-provider8001】

 Openfeign远程调用服务提供者搭建

文章地址http://t.csdnimg.cn/06iz8

相关接口

测试远程调用:http://localhost:8001/payment/index

服务消费者【test-consumer-resilience4j8004】

 Openfeign远程调用消费者搭建

文章地址http://t.csdnimg.cn/06iz8

依赖

 <!-- resilience4j  --><dependency><groupId>io.github.resilience4j</groupId><artifactId>resilience4j-spring-cloud2</artifactId></dependency><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-circuitbreaker-resilience4j</artifactId></dependency>

application.yml

resilience4j.circuitbreaker:configs:default:# 熔断器打开的失败阈值failureRateThreshold: 30# 默认滑动窗口大小,circuitbreaker使用基于计数和时间范围欢动窗口聚合统计失败率slidingWindowSize: 10# 滑动窗口类型,默认为基于计数的滑动窗口slidingWindowType: TIME_BASED# 计算比率的最小值,和滑动窗口大小去最小值,即当请求发生5次才会计算失败率minimumNumberOfCalls: 5# 半开状态允许的请求数permittedNumberOfCallsInHalfOpenState: 3# 是否自动从打开到半开automaticTransitionFromOpenToHalfOpenEnabled: true# 熔断器从打开到半开需要的时间waitDurationInOpenState: 2srecordExceptions:- java.lang.Exceptioninstances:# 异常熔断比例降级# 实例名称:自己定义的名称,对应@CircuitBreaker的namebackendA:# 采用上面的default配置baseConfig: default# 慢调用熔断比例降级# 实例名称:自己定义的名称,对应@CircuitBreaker的namebackendB:# 熔断器打开的失败阈值failureRateThreshold: 50# 慢调用时间阈值,超过两秒就算慢调用slowCallDurationThreshold: 2s# 慢调用百分比阈值,断路器吧调用事件大于slowslowCallRateThreshold: 30slidingWindowSize: 10slidingWindowType: TIME_BASEDminimumNumberOfCalls: 2permittedNumberOfCallsInHalfOpenState: 2waitDurationInOpenState: 2seventConsumerBufferSize: 10

OrderController【控制层】

/*** 慢调用比例熔断降级** @return*/@GetMapping("/slowcircuitbackend")@CircuitBreaker(name = "backendB", fallbackMethod = "slowcircuitbackendFallback")public String slowcircuitbackend() {log.info("************ 进入方法 ***********");//沉睡10秒,触发慢调用try {TimeUnit.SECONDS.sleep(10);} catch (InterruptedException e) {e.printStackTrace();}String index = paymentFeignService.paymentIndex();log.info("************ 离开方法 ***********");return index;}/*** 慢调用比例熔断降级方法** @param e* @return*/public String slowcircuitbackendFallback(Throwable e) {e.printStackTrace();return "太慢了,触发慢调用比例熔断降级";}

相关接口

测试慢调用比例熔断降级:http://localhost:8004/order/slowcircuitbackend

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/725591.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Unity3D Netty网络框架的使用详解与原理详解

前言 Unity3D是一款强大的跨平台游戏开发引擎&#xff0c;而Netty是一个高性能、异步事件驱动的网络应用框架。结合使用Unity3D和Netty可以实现网络游戏的开发&#xff0c;实现客户端和服务器端之间的通信。本文将详细介绍Unity3D和Netty的使用方法和原理&#xff0c;以及如何…

学习大数据,所必需的java基础(8)

文章目录 字符缓冲流字符缓冲输出流 _Buffered和Writer字符缓冲输入流字符缓冲流练习 转换流字符编码字符集转换流转换流_OutputStreamWriter序列流和反序列流的介绍序列化流_ObjectOutputStream反序列化_ObjectInputStream不想被序列化操作反序列化时出现的问题以及分析和解决…

解决:hive数据库初始失败

1、背景 采用Mysql数据库保存hive元数据时&#xff0c;我们一般是这样操作&#xff1a; 启动mysql服务&#xff1b;用mysql新建一个库&#xff08;比如库名为"hive“&#xff0c;这个“hive”与hive-site.xml中的local:3306/hive的“hive”对应&#xff0c;是用来保存hiv…

滴滴基于 Clickhouse 构建新一代日志存储系统

ClickHouse 是2016年开源的用于实时数据分析的一款高性能列式分布式数据库&#xff0c;支持向量化计算引擎、多核并行计算、高压缩比等功能&#xff0c;在分析型数据库中单表查询速度是最快的。2020年开始在滴滴内部大规模地推广和应用&#xff0c;服务网约车和日志检索等核心平…

SkyWalking 本地启动以及闪退问题

1. 下载包 Downloads | Apache SkyWalking SkyWalking APM包含OAP和UI Java Agent 就是Java 的探针 2. 运行 UI 默认端口是 8080&#xff0c; OAP 默认端口是 11800&#xff08;grpc&#xff09;12800&#xff08;http&#xff09; 如果占用可以修改配置文件 UI 项目的配…

MySQL和Redis Common Command

Ubuntu 配置 MySQL 下载对应版本的deb包并解压&#xff0c;用不到test可删除&#xff0c;wegt或者直接去镜像网站下载均可 tar xvf mysql-server_5.7.37-1ubuntu18.04_amd64.deb-bundle.tar -C /mnt/d/opt/mysql-debrm -f mysql-community-test_5.7.37-1ubuntu18.04_amd64.deb…

Verdi VC Apps Batch mode 使用

Verdi VC Apps除了能在Verdi gui中启动之外&#xff0c;其实还可以使用batch mode. 下面我简单介绍一下如何使用&#xff1a; $VERDI_HOME/share/VIA/Apps/Bin/ 目录下有各个Apps对应的perl脚本&#xff0c;我们使用该脚本来启动batch mode. 以listRegisters.pl 为例&#xf…

LVS 负载均衡部署的三种模式 与搭建dr模式具体步骤

一 LVS 负载均衡部署的模式 LVS 有三种负载均衡的模式&#xff0c;分别是VS/NAT(nat 模式)、VS/DR(路由模式)、VS/TUN(隧道模式)。 &#xff08;一&#xff09;三种模式原理 及优缺点 1&#xff0c;nat 模式 1.1 原理 原理:首先负载均衡器接收到客户的请求数据包时&am…

【HTML/CSS学习】CSS常见选择器

CSS&#xff08;层叠样式表&#xff09;中有许多常见的选择器&#xff0c;它们用于选择要应用样式的HTML元素。以下是一些常见的CSS选择器&#xff1a; 1. 元素选择器&#xff08;Element Selector&#xff09; 选择所有指定类型的HTML元素。 p {/* 样式规则 */ }2. 类选择器…

GPT-4技术解析:与Claude3、Gemini、Sora的技术差异与优势对比

【最新增加Claude3、Gemini、Sora、GPTs讲解及AI领域中的集中大模型的最新技术】 2023年随着OpenAI开发者大会的召开&#xff0c;最重磅更新当属GPTs&#xff0c;多模态API&#xff0c;未来自定义专属的GPT。微软创始人比尔盖茨称ChatGPT的出现有着重大历史意义&#xff0c;不亚…

b站小土堆pytorch学习记录—— P18-P22 神经网络+小实战

文章目录 一、卷积层 P181.卷积操作2.代码 二、池化层 P191.池化层简单介绍2.代码&#xff08;1&#xff09;池化操作中数字的变化&#xff08;2&#xff09;池化操作对图片的影响 三、非线性激活 P201.简要介绍2.代码 四、线性层及其他层介绍 P211.线性层2.代码 五、搭建小实战…

Conda快速安装的解决方法(Mamba安装)

如果你的Conda安装了&#xff0c;你可能会发现一个问题&#xff0c;就是使用Conda install 安装某个软件时&#xff0c;会特别慢&#xff0c;这时候呢&#xff1f;你会上网去搜&#xff0c;然后大家解决的方法呢。一是告诉你镜像可以下载快一点&#xff0c;二是&#xff0c;Mam…

基于逻辑回归实现乳腺癌预测(机械学习与大数据)

基于逻辑回归实现乳腺癌预测 将乳腺癌数据集拆分成训练集和测试集&#xff0c;搭建一个逻辑回归模型&#xff0c;对训练集进行训练&#xff0c;然后分别对训练集和测试集进行预测。输出以下结果&#xff1a; 该模型在训练集上的准确率&#xff0c;在测试集上的准确率、召回率和…

hyperf 二十五 数据迁移 一

教程&#xff1a;Hyperf 版本说明 一 生成迁移 php bin/hyperf.php gen:migration create_users_table 执行文件&#xff1a;Hyperf\Database\Commands\Migrations\GenMigrateCommand 功能&#xff1a;创建迁移文件 参数&#xff1a; name 文件名称 选项&#xff1a; c…

Rust 安装与版本更新

Rust 简介 Rust &#xff0c;一门赋予每个人构建可靠且高效软件能力的语言&#xff0c;主打内存安全。 2024年2月&#xff0c;在一份 19 页的报告《回归基础构件&#xff1a;通往安全软件之路》中&#xff0c;白宫国家网络主任办公室&#xff08;ONCD&#xff09;呼吁开发者使…

NoSQL--3.MongoDB配置(Linux版)

目录 2.2 Linux环境下操作 2.2.1 传输MongoDB压缩包到虚拟机&#xff1a; 2.2.2 启动MongoDB服务&#xff1a; 2.2 Linux环境下操作 2.2.1 传输MongoDB压缩包到虚拟机&#xff1a; &#xff08;笔者使用XShell传输&#xff09; 如果不想放在如图的路径&#xff0c;删除操作…

[AIGC] Maven的生命周期和Spring Boot的结合使用

在介绍Maven和Spring Boot结合使用之前, 了解Maven生命周期是非常必要的。Maven生命周期是构建过程中应遵循的一组步骤。每个步骤都代表了一个阶段&#xff0c;大致可以分为以下三部分&#xff1a; clean阶段: 清理上一次的构建结果。default阶段&#xff08;构建阶段&#xf…

Appium系列(1)安装启动Appium

Appium环境准备 Mac电脑jdk环境AndroidSDK环境node>8.1.0&#xff08;最好用最新版本&#xff09; 安装命令 npm i -g appium安装不成功请检查node 版本是否正确 安装成功命令行输入appium回车查看 安装驱动程序 1、先检查当前驱动情况 通过 appium driver list 进行…

RK356X RK3588 单独编译kernel 与烧录

RK356X RK3588 单独编译kernel 与烧录 可以快速提高我们开发与调试速度 网上可查到的方法如下&#xff1a; RK3568 Android12&#xff1a; 1.添加kernel-4.19/makekernel.sh #!/bin/sh make -j24 ARCHarm64 CC../prebuilts/clang/host/linux-x86/clang-r416183b/bin/clang …