dengsixing 9c8ca49c1c 保存熔断规则接口优化 3 years ago
..
src 9c8ca49c1c 保存熔断规则接口优化 3 years ago
README.md 9c8ca49c1c 保存熔断规则接口优化 3 years ago
pom.xml 9c8ca49c1c 保存熔断规则接口优化 3 years ago

README.md

Sentinel DataSource Spring Cloud Config

Sentinel DataSource Spring Cloud Config provides integration with Spring Cloud Config so that Spring Cloud Config can be the dynamic rule data source of Sentinel.

To use Sentinel DataSource Spring Cloud Config, you should add the following dependency:

<dependency>
    <groupId>com.alibaba.csp</groupId>
    <artifactId>sentinel-datasource-spring-cloud-config</artifactId>
    <version>x.y.z</version>
</dependency>

Then you can create an SpringCloudConfigDataSource and register to rule managers. For instance:

ReadableDataSource<String, List<FlowRule>> flowRuleDs = new SpringCloudConfigDataSource<>(ruleKey, s -> JSON.parseArray(s, FlowRule.class));
FlowRuleManager.register2Property(flowRuleDs.getProperty());

To notify the client that the remote config has changed, we could bind a git webhook callback with the com.alibaba.csp.sentinel.datasource.spring.cloud.config.SentinelRuleLocator.refresh API. We may refer to the the sample com.alibaba.csp.sentinel.datasource.spring.cloud.config.test.SpringCouldDataSourceTest#refresh in test cases.

We offer test cases and demo in the package: com.alibaba.csp.sentinel.datasource.spring.cloud.config.test. When you are running test cases, please follow the steps:

// First, start the Spring Cloud config server
com.alibaba.csp.sentinel.datasource.spring.cloud.config.server.ConfigServer

// Second, start the Spring Cloud config client
com.alibaba.csp.sentinel.datasource.spring.cloud.config.client.ConfigClient

// Third, run the test cases and demo
com.alibaba.csp.sentinel.datasource.spring.cloud.config.test.SentinelRuleLocatorTests
com.alibaba.csp.sentinel.datasource.spring.cloud.config.test.SpringCouldDataSourceTest