JAVA全系列 教程
3762个小节阅读:7094.2k
目录
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
xxxxxxxxxx
/**
* 根据id查询支付信息
* 测试fallback
* @param id
* @return
*/
@SentinelResource(value = "orderfindById",
// fallback = "testFallBack",fallbackClass = PaymentServiceFallback.class)
fallback = "testFallBack",fallbackClass = PaymentServiceFallback.class,
blockHandler = "testBlockHeader",blockHandlerClass = PaymentServiceFallback.class)
@GetMapping("findById")
public String test(String id){
if (id.equals("1")){
throw new RuntimeException("制造接口异常.");
}
return iPaymentFeginService.findById(id);
}
实时效果反馈
1.下列描述SentinelResource注解fallback和blockHandler都配置正确的是。
A 全部进入fallback
B 全部进入blockHandler
C 限流降级进入blockHandler,接口异常进入fallback
D 以上都是正确
答案
1=>C
Sentinel 提供对所有资源的实时监控。如果需要实时监控,客户端需引入以下依赖(以 Maven 为例):
xxxxxxxxxx
<!-- 在netty的基础上实现,通过http协议传输数据 -->
<dependency>
<groupId>com.alibaba.csp</groupId>
<artifactId>sentinel-transport-netty-http</artifactId>
<version>1.8.3</version>
</dependency>
注意:
引入上述依赖后,客户端便会主动连接 Sentinel 控制台。通过Sentinel 控制台即可查看客户端的实时监控。
只使用基本的流控功能的话,是不用额外指定启动参数的。但如果要接入Dashboard进行实时监控,则需要在应用启动时加入JVM参数指定控制台地址和端口。
内容如下
xxxxxxxxxx
-Dcsp.sentinel.dashboard.server=192.168.47.10:8719
其他相关参数有:
配置项 | 默认值 | 描述 |
---|---|---|
csp.sentinel.dashboard.server | localhost:8080 | dashboard服务的地址,用于传输通信 |
csp.sentinel.heartbeat.client.ip | 手动配置应用的ip,如无则自动获取 | |
csp.sentinel.api.port | 8719 | 应用用于传输数据的端口 |
project.name | 应用显示的名称 |
应用的监控指标数据已经保存到Dashboard了,这个时候,我们在控制台界面来查看监控数据: