当前位置:网站首页>SentinelResource注解詳解
SentinelResource注解詳解
2022-06-26 20:11:00 【菜鳥是大神】
SentinelResource注解 屬性總結。
> 本文基於Sentinel 1.6.2,理論支持1.4.0+
| 屬性 | 作用 | 是否必須 |
|---|---|---|
| value | 資源名稱 | 是 |
| entryType | entry類型,標記流量的方向,取值IN/OUT,默認是OUT | 否 |
| blockHandler | 處理BlockException的函數名稱。函數要求: 1. 必須是 public2.返回類型與原方法一致 3. 參數類型需要和原方法相匹配,並在最後加 BlockException 類型的參數。4. 默認需和原方法在同一個類中。若希望使用其他類的函數,可配置 blockHandlerClass ,並指定blockHandlerClass裏面的方法。 | 否 |
| blockHandlerClass | 存放blockHandler的類。對應的處理函數必須static修飾,否則無法解析,其他要求:同blockHandler。 | 否 |
| fallback | 用於在拋出异常的時候提供fallback處理邏輯。fallback函數可以針對所有類型的异常(除了 exceptionsToIgnore 裏面排除掉的异常類型)進行處理。函數要求:1. 返回類型與原方法一致 2. 參數類型需要和原方法相匹配,Sentinel 1.6開始,也可在方法最後加 Throwable 類型的參數。3.默認需和原方法在同一個類中。若希望使用其他類的函數,可配置 fallbackClass ,並指定fallbackClass裏面的方法。 | 否 |
| fallbackClass【1.6】 | 存放fallback的類。對應的處理函數必須static修飾,否則無法解析,其他要求:同fallback。 | 否 |
| defaultFallback【1.6】 | 用於通用的 fallback 邏輯。默認fallback函數可以針對所有類型的异常(除了 exceptionsToIgnore 裏面排除掉的异常類型)進行處理。若同時配置了 fallback 和 defaultFallback,以fallback為准。函數要求:1. 返回類型與原方法一致 2. 方法參數列錶為空,或者有一個 Throwable 類型的參數。3. 默認需要和原方法在同一個類中。若希望使用其他類的函數,可配置 fallbackClass ,並指定 fallbackClass 裏面的方法。 | 否 |
| exceptionsToIgnore【1.6】 | 指定排除掉哪些异常。排除的异常不會計入异常統計,也不會進入fallback邏輯,而是原樣拋出。 | 否 |
| exceptionsToTrace | 需要trace的异常 | Throwable |
> TIPS
>
> - 1.6.0 之前的版本 fallback 函數只針對降級异常(DegradeException)進行處理,不能針對業務异常進行處理。
> - 若 blockHandler 和 fallback 都進行了配置,則被限流降級而拋出 BlockException 時只會進入 blockHandler 處理邏輯。若未配置 blockHandler、fallback 和 defaultFallback,則被限流降級時會將 BlockException 直接拋出。
> - 從 1.4.0 版本開始,注解方式定義資源支持自動統計業務异常,無需手動調用 Tracer.trace(ex) 來記錄業務异常。Sentinel 1.4.0 以前的版本需要自行調用 Tracer.trace(ex) 來記錄業務异常。
边栏推荐
- Some cold knowledge about QT database development
- Disruptor local thread queue_ Use transprocessor processor and workpool to compare consumption - Notes on inter thread communication 005
- Why don't I recommend going to sap training institution for training?
- Some basic mistakes
- 品达通用权限系统(Day 1~Day 2)
- Analysis on development technology of NFT meta universe chain game system
- mysql存储过程
- Preliminary analysis of serial port printing and stack for arm bare board debugging
- 30. concatenate substrings of all words
- Gd32 USB composite device file descriptor
猜你喜欢

好物推薦:移動端開發安全工具

抖音实战~首页视频~下拉刷新

vue中缓存组件keep-alive
MongoDB实现创建删除数据库、创建删除表(集合)、数据增删改查

黑客用机器学习发动攻击的九种方法

Web resource preloading - production environment practice

西瓜书重温(七): 贝叶斯分类器(手推+代码demo)

Uni app uses canvas to draw QR code

Kubernetes resource topology aware scheduling optimization

Disruptor local thread queue_ Use transprocessor processor and workpool to compare consumption - Notes on inter thread communication 005
随机推荐
Case description: the competition score management system needs to count the competition scores obtained by previous champions and record them in the file. The system has the following requirements: -
ImageView, glide load long picture (glide load picture)
Boot指标监测
MySQL - database creation and management
C# 练习。类列表加记录,显示记录和清空记录
好物推薦:移動端開發安全工具
IK word breaker
Disruptor local thread queue_ Use transprocessor processor and workpool to compare consumption - Notes on inter thread communication 005
MySQL stored procedure
On the escape of inequality value
Daily basic use of alicloud personal image warehouse
Is it safe to open an account for CICC Wealth Online?
stm32和电机开发(直流有刷电机和步进电机)
The successfully resolved idea cannot use the log normally after referencing Lombok's @slf4j
Project practice 6: distributed transaction Seata
find_ path、find_ Library memo
[serialization] how to master the core technology of opengauss database? Secret 5: master database security (6)
BOM and DOM operations
MySQL - table creation and management
30. 串联所有单词的子串