Commit Graph

4 Commits

Author SHA1 Message Date
Eric Zhao bac35ac100 Add back thread count metric type support for parameter flow control
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2019-01-30 09:37:13 +08:00
Eric Zhao 832d6e425d Update document to meet Markdown lint
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2018-12-29 15:23:27 +08:00
Carpenter Lee aaf88b8a0a Rename ParamFlowRule.blockGrade to grade 2018-10-16 20:34:40 +08:00
Eric Zhao 88a02623ac
Add flow control by frequent (hot spot) parameters (#156)
- Add callback registry for statistic slot for extensions.
- Add a new module `sentinel-parameter-flow-control` under `sentinel-extension`.
- Add a `CacheMap` interface to provide abstraction for cache. We use ConcurrentLinkedHashMap as the default implementation (LRU strategy)..
- Add a `ParameterMetric` class as frequent parameter metrics for a specific resource. The metric map is located in `ParamFlowSlot` rather than `ClusterNode`.
- Implement `ParameterLeapArray` as statistic data structure for frequent parameters in a period of time window.
- Add `ParamFlowSlot` as the checker slot; Add `ParamFlowChecker` to do rule checking; Add `ParamFlowRuleManager` to do rule managing.
- The statistic metrics for frequent parameters is enabled only if the related resource has configured parameter flow rule; Parameter metrics for removed rules will be cleared automatically.
- Leverage extensible `SlotChainBuilder` to provide a `HotParamSlotChainBuilder`.
- Add command handlers for hot param rules.
- Add test cases and demo.
2018-09-27 14:15:47 +08:00