Commit Graph

125 Commits

Author SHA1 Message Date
Eric Zhao 94dc7966ae Bump version to 0.2.1-SNAPSHOT
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2018-09-28 17:18:41 +08:00
Eric Zhao 1063974ceb Bump version to 0.2.0
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2018-09-27 17:59:23 +08:00
Eric Zhao 87076a6977 Code and javadoc refinement
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2018-09-27 16:51:30 +08:00
Eric Zhao 5f5443a546 Update sample count for ParameterMetric
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2018-09-27 14:28:05 +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
Eric Zhao cf1cf8a59f Update dependencies
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2018-09-26 15:03:19 +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
moon tiger 4ff2e37abb Add DataSource integration for Redis (#102)
- This implementation uses Lettuce as the internal client, and leverages Redis pub-sub feature to implement push mode data source. (by @tigerMoon)
2018-09-14 14:08:50 +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
yfh0918 175452a96a Enhance FileRefreshableDataSource and FileWritableDataSource (#125)
- Add method to check if the resource is modified in `AutoRefreshDataSource`
- Implement FileWritableDataSource
2018-09-05 12:36:46 +08:00
Eric Zhao 007cd9d291 Some refactor of data source
- Add `close` method in WritableDataSource (to extend AutoCloseable in JDK 1.7 later)
- Separate the writable file data source from original class
- Add a sample to show how to register data sources via Sentinel init mechanism
- Separate a writable data source registry from original handler to make it clear

Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2018-09-04 11:09:42 +08:00
Eric Zhao 0060e8042a Refactor Sentinel data source hierarchy
- Spilt DataSource into two types: ReadableDataSource and WritableDataSource
- The AbstractDataSource now is read-only
- Refactor the file data source for writable implementation
- Rename: ConfigParser -> Converter (represents both encoder `T -> S` and decoder `S -> T`)
- Some other refinement

Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2018-09-04 11:09:42 +08:00
Eric Zhao 9164bb19fe
Fix the bug when resolving original method to get annotation (#111)
- The method from the signature will return the method of interface, so we need to resolve declared method in target class

Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2018-08-31 11:10:41 +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
Jason Song b51c3ad13e Add Apollo data source extension (#46) 2018-08-08 18:53: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
Eric Zhao 0438d530d4 Update documents
- Update document for Dubbo demo
- Update document for extensions

Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2018-08-07 19:43:32 +08:00
Eric Zhao fd936a4567 Update ZooKeeper data source integration
- Code refinement
- Add test cases

Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2018-08-06 10:02:02 +08:00
guonanjun 3395412c57 Add ZooKeeper data source for Sentinel (#33) 2018-08-05 13:03:18 +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
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