Sentinel使用Nacos持久化规则

DBC 1.6K 0
引入依赖
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
</dependency>

<dependency>
    <groupId>com.alibaba.csp</groupId>
    <artifactId>sentinel-datasource-nacos</artifactId>
    <version>1.5.2</version>
</dependency>

添加配置信息
#  cloud:
#    sentinel:
#      datasource:
#        ds:
#          nacos:
#            dataId: ${spring.application.name}-sentinel
#            groupId: DEFAULT_GROUP
#            rule-type: flow
#            server-addr: 81.71.147.62:8848
#      transport:
#        dashboard: 81.71.147.62:8858
#    nacos:
#      discovery:
#        server-addr: 81.71.147.62:8848
#        dataId:$android-cloud-sentinel:
Nacos中创建限流规则
DataID:项目名-sentinel
Group: DEFAULT_GROUP

JSON:
[
    {
        "resource": "/hello",
        "limitApp": "default",
        "grade": 1,
        "count": 5,
        "strategy": 0,
        "controlBehavior": 0,
        "clusterMode": false
    }
]

resource:资源名
limitApp:流控针对的调用来源,default不区分来源
grade:限流阈值类型(0-根据并发数量来限流 1-根据QPS来进行流量控制)
count:限流阈值
strategy:调用关系限流策略
controlBehavior:流量控制效果(直接拒绝、WarmUP、匀速排队)
clusterMode:是否集群模式
5-启动程序,访问测试
6-深入思考
对于接口的限流规则可以通过两个地方修改:Sentinel控制台、Nacos控制台

Sentinel控制台中修改规则:仅存在于服务的内存中,不会修改Nacos中的配置值,重启后恢复原来的值。
Nacos控制台中修改规则:服务的内存中规则会更新,Nacos中持久化规则也会更新,重启后依然保持。

发表评论 取消回复
表情 图片 链接 代码

分享