当前位置: 首页 > news >正文

SpringCloud sentinel服务熔断 服务降级

在https://github.com/alibaba/Sentinel/releases下载最新版本sential jar包

打开cmd,输入java -jar xxx.jar 启动sentinel 服务端

通过观察cmd 日志输出sentinel基于springboot 2.5 开发

INFO: Sentinel log output type is: file
INFO: Sentinel log charset is: utf-8
INFO: Sentinel log base directory is: C:\Users\logs\csp\
INFO: Sentinel log name use pid is: false
INFO: Sentinel log level is: INFO.   ____          _            __ _ _/\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \\\/  ___)| |_)| | | | | || (_| |  ) ) ) )'  |____| .__|_| |_|_| |_\__, | / / / /=========|_|==============|___/=/_/_/_/:: Spring Boot ::               (v2.5.12)

打开

http://localhost:8080/ 用户名密码都是sentinel  打开控制台页面​​​​​http://localhost:8080/#/dashboard/flow/demo1springboot项目引入依赖

spring-cloud-starter-alibaba-sentinel

坐标参考

<dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-sentinel</artifactId><version>2023.0.3.3</version>
</dependency>

properties增加配置:

spring.cloud.sentinel.transport.dashboard= localhost:8080
spring.cloud.sentinel.transport.port= 8719
feign.sentinel.enabled=true

在service 中@FeignClient增加项,fallbackFactory 指向TestfallbackFactory对象

@FeignClient(name = "demo1",fallbackFactory = TestFallbackFactory.class,configuration = FeignConfig.class)
public interface FeignService {@GetMapping(value = "test")User test();
}@Component
public class TestFallbackFactory implements FallbackFactory<FeignService> {@Overridepublic FeignService create(Throwable cause) {return new FeignService() {@Overridepublic User test() {System.out.println("fallback");return new User();}};}
}@Configuration
public class FeignConfig {@BeanLogger.Level feignLoggerLevel() {// 设置日志级别为FULL以获取最详细的日志信息return Logger.Level.FULL;}}

至此,客户端就配置好了

服务端打开http://localhost:8080/

点击簇点链路菜单

对调用的微服务设置并发1 使之进入fallback

打开浏览器调用t1方法 一顿狂刷新

可以看到有时候返回正常

有时候返回fallback设置的对象

测试正常,超过并发1进入fallback,否则正常返回

http://www.xdnf.cn/news/1172647.html

相关文章:

  • 希尔排序cc
  • 电子电气架构 --- 汽车软件全生命周期
  • Cesium绘制圆锥
  • 「源力觉醒 创作者计划」深度讲解大模型之在百花齐放的大模型时代看百度文心大模型4.5的能力与未来
  • 深度图像滤波
  • Java 时间处理 API 全解析:从 JDK7 到 JDK8 的演进
  • Linux基本命令
  • Python实战:基于Streamlit的股票筛选系统,实时K线图+数据缓存优化
  • 应急响应基础
  • 通用图片 OCR 到 Word API 数据接口
  • 增强LLM最后隐藏层的意义与效果
  • 代码随想录算法训练营第五十二天|图论part3
  • 分享鸢尾花数据集:iris.csv,以及简单数据分析与分类预测示例(决策树)
  • 动态IP+AI反侦测:新一代爬虫如何绕过生物行为验证?
  • PyTorch中nn.Module详解和综合代码示例
  • 【前端】ikun-pptx编辑器前瞻问题三: pptx的图片如何提取,并在前端渲染。
  • 7月23日华为机考真题第二题-200分
  • python在windows电脑找回WiFi密码
  • 前端/后端,前台/中台/后台概念区别
  • python自动化测试框架,封装方法方式
  • 【Unity编辑器开发与拓展Handles】
  • CRMEB 单商户PRO多商户通用去版权教程
  • Oracle迁移到高斯,查询字段默认小写,解决办法
  • 微软Fabric重塑数据管理:Forrester报告揭示高ROI
  • 基于Kafka实现简单的延时队列
  • BUUCTF(web)部分题解
  • 设计模式九:构建器模式 (Builder Pattern)
  • springboot 升级到3.5.x后knife4j 文档无法识别问题解决
  • 新手向:Idea的使用技巧
  • Kubernetes服务发布基础