1.流控规则持久化到nacos

1.编写json格式的持久化数据

  1. [
  2. {
  3. "resource": "/hello", #资源名
  4. "limitApp": "default",#流控针对的调用来源,default不区分来源
  5. "grade": 1, #限流阈值类型(0-根据并发数量来限流 1-根据QPS来进行流量控制)
  6. "count": 5, #限流阈值
  7. "strategy": 0, #调用关系限流策略0:直接;1:关联;2:链路
  8. "controlBehavior": 0, #流量控制效果(直接拒绝、WarmUP、匀速排队) 0:快速失败;1:warmup;3:排队等待
  9. "clusterMode": false #是否集群模式
  10. }
  11. ]

2.配置sentinel

  1. spring:
  2. cloud:
  3. loadbalancer: #负载均衡
  4. retry:
  5. enabled: true
  6. sentinel:
  7. enabled: true
  8. transport:
  9. dashboard: localhost:8080 #Sentinel 控制台地址
  10. port: 8719
  11. #heartbeat-interval-ms: 1000 #应用与Sentinel控制台的心跳间隔时间
  12. filter:
  13. enabled: true #Sentinel自动化配置是否生效
  14. metric:
  15. charset: UTF-8
  16. eager: true #取消Sentinel控制台懒加载
  17. log:
  18. dir: D:/logs/sentinel #Sentinel 日志文件所在的目录
  19. #block-page:
  20. datasource: #Sentinel流空规则持久化到nacos
  21. ds:
  22. nacos:
  23. server-addr: localhost:8848
  24. #namespace: public
  25. group-id: DEFAULT_GROUP
  26. data-id: ${spring.application.name}-sentinel
  27. data-type: json
  28. rule-type: flow