SpringCloud-Hystrix 服务降级与熔断

news/2024/11/19 15:11:59/

接上文SpringCloud-Feign

问题描述

在这里插入图片描述
在这里插入图片描述
为了解决上述情况,SpringCloud提供了Hystrix熔断器组件,如同保险丝。服务降级则不会直接返回错误,而是提供一个补救措施,正常响应给请求者。

1.服务降级

基于借阅管理服务,不开启用户和图书,即两者挂掉。
导入Hystrix依赖(此项目已停止维护,SpringCloud依赖中不自带了)。
在这里插入图片描述
启动类加上注解在这里插入图片描述
将用户和图书服务关闭,此时查阅信息不可用,则提供一个备选方案。也就是当服务出现异常时,返回我们的备选方案。
在这里插入图片描述
重启borrow-service服务
在这里插入图片描述
此时访问借阅信息接口即返回为空
在这里插入图片描述

2.服务熔断

在这里插入图片描述
在这里插入图片描述
重启后不断访问http://localhost:8201/borrow/1,发现刚开始会正常执行方法,然后进行补救。随着点击次数增多,会只执行补救。过段时间再点击还会执行正常方法再补救。即熔断。在这里插入图片描述
然后开启用户服务和图书服务。此时服务恢复后就会正常执行两个服务方法,熔断机制就会关闭。在这里插入图片描述

在这里插入图片描述

总结
在这里插入图片描述

3.openfeign实现降级

openfeign降级是针对访问某个controller方法失败后进行服务降级。此时将用户服务挂掉,图书服务不挂掉,执行借阅信息查看,则用户服务调用失败,此时给用户服务一个替代方案。
在这里插入图片描述

在这里插入图片描述
在borrow-service配置文件中添加配置让支持熔断
在这里插入图片描述
在这里插入图片描述

将user-service关闭,重启borrow-service服务在这里插入图片描述
针对user-service的挂掉,出现补救措施。book-service的补救措施同理。
在这里插入图片描述

4.Hystrix监控

新建一个模块
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
启动Hystrix管理页面服务,在进行监控的服务中添加依赖
在这里插入图片描述
在这里插入图片描述
服务重启
在这里插入图片描述

可以正常访问
在这里插入图片描述
启动监控服务
在这里插入图片描述
可以查看管理页面在这里插入图片描述
在中级输入要监控的服务,比如借阅服务:http://localhost:8201/actuator/hystrix.stream,然后点击monitor stream,查看服务,如图。
在这里插入图片描述
在访问接口后监控页面会变动。

**需要源文件可关注并在下方扣1,会私发。


http://www.ppmy.cn/news/1103721.html

相关文章

注意力机制讲解与代码解析

一、SEBlock(通道注意力机制) 先在H*W维度进行压缩,全局平均池化将每个通道平均为一个值。 (B, C, H, W)---- (B, C, 1, 1) 利用各channel维度的相关性计算权重 (B, C, 1, 1) --- (B, C//K, 1, 1) --- (B, C, 1, 1) --- sigmoid 与原特征相…

如何写出一篇爆款产品文案,从目标受众到市场分析!

一篇爆款产品文案意味着什么?意味着更强的种草能力,更高的销售转化和更强的品牌传播力。今天来分享下如何写出一篇爆款产品文案,从目标受众到市场分析! 一、产品文案策略 一篇爆款产品文案,并不是一时兴起造就的。在撰写之前&…

uView实现全屏选项卡

// 直接复制粘贴即可使用 <template><view><view class"tabsBox"><u-tabs-swiper ref"uTabs" :list"list":current"current"change"tabsChange":is-scroll"false"></u-tabs-swiper&g…

【Ubuntu搭建MQTT Broker及面板+发布消息、订阅主题】

Ubuntu搭建MQTT Broker及面板发布消息、订阅主题 配置curl数据源 curl -s https://assets.emqx.com/scripts/install-emqx-deb.sh | sudo bash开始安装 sudo apt-get install emqx启动 sudo emqx start使用面板 根据自己的服务器是否开始了防火墙放行端口&#xff08;1808…

想在 Windows 上使用 telnet

如果你想在 Windows 上使用 telnet&#xff0c;可以按照以下步骤安装&#xff1a; 打开控制面板。点击 "程序" 或 "程序和功能"。点击 "启用或关闭 Windows 功能"。在弹出的窗口中找到 "Telnet 客户端" 并勾选它。点击 "确定&qu…

论文笔记:一分类及其在大数据中的潜在应用综述

0 概述 论文&#xff1a;A literature review on one‑class classification and its potential applications in big data 发表&#xff1a;Journal of Big Data 在严重不平衡的数据集中&#xff0c;使用传统的二分类或多分类通常会导致对具有大量实例的类的偏见。在这种情况…

软件测试下的AI之路(2)

&#x1f60f;作者简介&#xff1a;博主是一位测试管理者&#xff0c;同时也是一名对外企业兼职讲师。 &#x1f4e1;主页地址&#xff1a;【Austin_zhai】 &#x1f646;目的与景愿&#xff1a;旨在于能帮助更多的测试行业人员提升软硬技能&#xff0c;分享行业相关最新信息。…

无涯教程-JavaScript - IMSECH函数

描述 IMSECH函数以x yi或x yj文本格式返回复数的双曲正割。复数的双曲正割被定义为双曲余弦的倒数,即 六(z) 1/cosh(z) 语法 IMSECH (inumber)争论 Argument描述Required/OptionalInumberA complex number for which you want the hyperbolic secant.Required Notes Ex…