Commit Graph

288 Commits

Author SHA1 Message Date
Carpenter Lee b5b3f6edee Bug fix: fix probability of metric lose 2018-09-16 21:13:06 +08:00
Eric Zhao b1f33675c5 Improvements for Redis data source and demo
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2018-09-14 15:02:55 +08:00
Eric Zhao 5edac71fef
Add support for asynchronous invocation entry (#146)
- Add several `asyncEntry` method in `Sph` interface and `SphU` class.
- Add a new `AsyncEntry` class for asynchronous entry representation. Some refactor for `CtEntry`.
- Refactored `CtSph` and implement `asyncEntryInternal` for asynchronous entry.
- Add `runOnContext` and `replaceContext` method in `ContextUtil` for context switching.
2018-09-14 10:07:27 +08:00
Eric Zhao 54905497d0 Refactor LeapArray to reuse code for current bucket
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2018-09-12 19:17:25 +08:00
Eric Zhao 2a3e33590f Update test cases and demo for async support
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2018-09-12 18:53:24 +08:00
Eric Zhao ca2f4d9fae
Support extensible slot chain builder using SPI mechanism (#145)
- Support extensible `SlotChainBuilder` using SPI mechanism
- Add a `SlotChainProvider` to load slot chain builder and create new slot chains

Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2018-09-12 13:53:43 +08:00
Eric Zhao d798794ab3 Refactor the context and entry to support asynchronous invocation chain
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2018-09-12 11:46:21 +08:00
Eric Zhao d142a07a39 Enhance log and null check for rule managers
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2018-09-10 15:44:42 +08:00
Eric Zhao ed30f85f9c Fixes #128: Fix early return when exception ratio is 100%
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2018-09-05 19:03:27 +08:00
Eric Zhao 50a5610010 Enhance file data source and flow rule manager
- Some refinement for file data source
- Add resource name checking in FlowRuleManager to avoid NPE

Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2018-09-05 15:45:52 +08:00
Carpenter Lee 6799da270d Fixed #109: fix miss-usage of ClusterNode.successQps() in DegradeRule.passCheck() method 2018-09-03 11:54:59 +08:00
Shalti 2772f189ab Fixed CR comments 2018-08-29 21:19:16 +08:00
Shalti dc0a7086b5 Renamed to MetricsReader 2018-08-29 21:19:16 +08:00
Shalti ac8698ed9f Refactored some classes 2018-08-29 21:19:16 +08:00
Carpenter Lee d716f0f14a Fixes #99, fix miss comparison of FlowRule.maxQueueingTimeMs 2018-08-29 17:48:04 +08:00
子矜 cedd420336 jialianglinjl 2018-08-29 15:33:33 +08:00
Eric Zhao 23f65b9fee Update dependencies and add log
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2018-08-17 11:17:24 +08:00
Eric Zhao 94aea568f6 Miscellaneous update
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2018-08-15 15:33:29 +08:00
Eric Zhao 820160d542 Fix update logic of minRt in bucket
- Fix incorrect usage. It's not thread-safe when comparing and updating `minRt`, but it's okay since the actual minimum RT often matches free load.

Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2018-08-14 20:23:42 +08:00
Eric Zhao 6392cb0336 Modify loading mechanism of authority rules: only pick first
- Comment/javadoc refinement

Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2018-08-13 14:42:33 +08:00
Eric Zhao 4226868dcf Fix typo in rule constants and add authority rule demo
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2018-08-13 11:22:03 +08:00
Eric Zhao 227776a301 Fixes #52: Error file separator regex in Windows environment
- This bug can cause init failure of `AppNameUtil`

Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2018-08-09 15:16:11 +08:00
Eric Zhao b212e5f26e Bump version to 0.2.0-SNAPSHOT
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2018-08-08 20:45:25 +08:00
Eric Zhao 6bef9a8ee1 Bump version to 0.1.1
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2018-08-08 19:57:37 +08:00
Eric Zhao a65d16083d
Optimize for statistic data structures (#47)
* Optimize for leap array

- Fix a bug: old position is not cleaned when inserting into a new (empty) position
- Reuse buckets for optimization
- The strategy is now changed: deprecated buckets will not be reset until newer time triggered. LeapArray is responsible for filtering the deprecated buckets (e.g. in `list` or `values`)
- Update test cases

Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2018-08-08 19:36:42 +08:00
Carpenter Lee 40514587ac Set SystemRule's threshold to zero is allowed. 2018-08-08 14:33:13 +08:00
Eric Zhao b1cf30fc24 Add support for shared block handler
- Update javadoc and document

Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2018-08-08 10:40:38 +08:00
Eric Zhao 348b1c819b Add Sentinel annotation definition and aspectj extension
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2018-08-08 10:40:38 +08:00
yizhenqiang 8075232cdd Add volatile to methodNameMap and chainMap (#34)
Modify MethodUtil#methodNameMap and CtSph#chainMap: add `volatile` to keep in line with others
2018-08-05 09:05:55 +08:00
Eric Zhao b2a3ef26a7 Fixes test cases for degrade regarding the new strategy
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2018-08-01 22:24:00 +08:00
Carpenter Lee f144a2713f Refine Degrade rule checking. 2018-08-01 17:48:53 +08:00
Eric Zhao b113219c27 Fixes #14: Apply Alibaba Java Coding Guidelines
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2018-07-31 10:40:02 +08:00
Carpenter Lee bc620d616f Refine AppNameUtil 2018-07-31 10:26:37 +08:00
Eric Zhao 47d9070a4a
Fixes #9: Use named thread factory for identification (#10)
* Use named thread factory with all thread pools for identification

Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2018-07-30 18:10:56 +08:00
Eric Zhao 6b6d13ca76 Add Nacos datasource integration
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2018-07-30 17:39:47 +08:00
Carpenter Lee 5d5b19e9d7 Set default FlowRule.grade to RuleConstant.FLOW_GRADE_QPS 2018-07-27 17:50:03 +08:00
Eric Zhao 934816b9ab Bump version to 0.1.1-SNAPSHOT
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2018-07-27 16:47:14 +08:00
Eric Zhao c92fea5d46 Welcome to the world, Sentinel 2018-07-27 16:34:30 +08:00