SpringCloud-Alibaba-Sentinel持久化 SpringCloud-Alibaba-Sentinel-配置持久化策略详解
T 人气:0想了解SpringCloud-Alibaba-Sentinel-配置持久化策略详解的相关内容吗,T在本文为您仔细讲解SpringCloud-Alibaba-Sentinel持久化的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:SpringCloud-Alibaba-Sentinel-配置持久化,SpringCloud-Alibaba-Sentinel持久化,下面大家一起来学习吧。
前言:
Sentinel的如果没有配置持久化的话配置一些 流控 和服务降级 从启项目就会置空所以需要持久化的操作
动态规则扩展
拉模式:客户端主动向某个规则管理中心定期轮询拉取规则,这个规则中心可以是 RDBMS、文件,甚至是 VCS 等。这样做的方式是简单,缺点是无法及时获取变更;
推模式:规则中心统一推送,客户端通过注册监听器的方式时刻监听变化,比如使用 Nacos、Zookeeper 等配置中心。这种方式有更好的实时性和一致性保证
案例用Nacos
步奏:
pom
添加nacos 对sentinel管控的依赖
<dependency> <groupId>com.alibaba.csp</groupId> <artifactId>sentinel-datasource-nacos</artifactId> </dependency>
yml
server: port: 8092 spring: application: name: sentinel-service cloud: nacos: discovery: server-addr: localhost:8848 #Nacos服务注册中心地址 sentinel: transport: dashboard: localhost:8080 #配置Sentinel dashboard地址 port: 8719 datasource: ds1: nacos: # nacos连接地址 server-addr: localhost:8848 # 读取配置文件的名称 sentinel-8092 dataId: sentinel-8092 # nacos连接的分组默认 groupId: DEFAULT_GROUP # 读取培训文件类型为json data-type: json rule-type: flow
新版yml配置文件上面因配置文件错位 启动报错 特此 修改 ,2020年12月22日特此记录
server: port: 8092 spring: application: name: sentinel-service cloud: nacos: discovery: server-addr: localhost:8848 #Nacos服务注册中心地址 sentinel: transport: dashboard: localhost:8080 #配置Sentinel dashboard地址 port: 8719 datasource: ds1: nacos: # nacos连接地址 server-addr: localhost:8848 # 读取配置文件的名称 sentinel-8092 dataId: sentinel-8092 # nacos连接的分组默认 groupId: DEFAULT_GROUP # 读取培训文件类型为json data-type: json rule-type: flow management: endpoints: web: exposure: include: '*
配置nacos
json
resource:资源名称
limitApp:来源应用
grade:阈值类型,0表示线程数,1表示QPS
count:单机阈值
strategy:流控模式,0表示直接,1表示关联,2表示链路
controlBehavior:流控效果,0表示快速失败,1表示Warm Up,2表示排队等待
clusterMode:是否集群
[ { "resource": "/select/test", "limitApp": "default", "grade": 1, "count": 1, "strategy": 0, "controlBehavior": 0, "clusterMode": false } ]
从启项目请求一下就可了
哈哈 我自己都笑了
加载全部内容