Sentinel 规则持久化|学习笔记

简介: 快速学习 Sentinel 规则持久化

开发者学堂课程【全面讲解 Spring Cloud Alibaba 技术栈(知识精讲+项目实战)第二阶段Sentinel 规则持久化】学习笔记与课程紧密联系,让用户快速学习知识

课程地址https://developer.aliyun.com/learning/course/684/detail/11882


Sentinel规则持久化

 

规则持久化

这个规则有一个缺点,它默认保存在内存中,一旦微服务重新启动,规则就会自动丢失。

添加一个流控规则,新增,刷新

得到结果:

image.png

如果微服务重启了再刷新,会发现流控规则已经消失了。

如何将内存中的规则持久化?

本地文件数据,会定时轮询文件的变更、读取规则,这样我们既可以在应用本地直接修改文件来更新规则,也可以通过 Sentinel 控制台推送规则,以此以本地数据文件数据源为例,推送规则如下图所示。

以下就是 Sentinel  规则持久化的原理图:

image.png

Sentinel Dashboard 可以向 Sentinel 客户端推送规则,Sentinel 客户端其实就是集成在微服务里的一个目标,收到规则以后就会将规则默认的送到内存中。

我们现在要做的是在内存中放一份。再向本地文件放一份。

Sentinel 控制台通过 API 将规则推送至客户端并更新到内存中,接着注册的写数据源会将新的规则保存到本地的文件中。

首先,编写处理类,文件持久化,实现一个接口,将代码都填进去。

 image.png

那么此时,我们当前所有的规则都会存在。这个目录下面。

String ruleDir = system. get property(“user home”) + ”/sentinel rules/”+ applicationname;

添加配置

在 resource 下创建配置目录META-INF/Service ,然后添加文件com.alibaba.csp.sentinel.init.Initfunc,在文件中添加配置类的全路径。

Com.itheima.config.FilePersistence

找到resource,新建一个文件夹

第二步,将文件名填入新的文件夹中。

在这个文件里添加第一步写的持久化的类。

重新启动微服务,流控规则依然存在。

image.png

切换到流控规则,规则依旧存在。image.png

相关文章
|
2月前
|
监控 算法 Java
高并发架构设计三大利器:缓存、限流和降级问题之配置Sentinel的流量控制规则问题如何解决
高并发架构设计三大利器:缓存、限流和降级问题之配置Sentinel的流量控制规则问题如何解决
|
4月前
|
Java 测试技术 Nacos
|
4月前
|
监控 Java 数据安全/隐私保护
Sentinel黑白名单授权规则解读
Sentinel黑白名单授权规则解读
|
4月前
|
Java Nacos Sentinel
【Springcloud Alibaba微服务分布式架构 | Spring Cloud】之学习笔记(九)Nacos+Sentinel+Seata
【Springcloud Alibaba微服务分布式架构 | Spring Cloud】之学习笔记(九)Nacos+Sentinel+Seata
650 0
|
4月前
|
SpringCloudAlibaba 监控 Java
SpringCloud Alibaba Sentinel实现熔断与限流--学习笔记
SpringCloud Alibaba Sentinel实现熔断与限流--学习笔记
86 0
|
4月前
|
监控 数据挖掘 索引
深度剖析Sentinel热点规则
深度剖析Sentinel热点规则
172 1
|
4月前
|
监控 Java API
解密Sentinel中流控规则的阀值奥秘
解密Sentinel中流控规则的阀值奥秘
47 0
解密Sentinel中流控规则的阀值奥秘
|
4月前
|
监控 测试技术 数据安全/隐私保护
如何集成Sentinel实现流控、降级、热点规则、授权规则总结
如何集成Sentinel实现流控、降级、热点规则、授权规则总结
178 0
|
4月前
|
Sentinel
一文速通Sentinel熔断及降级规则
一文速通Sentinel熔断及降级规则
|
23天前
|
Java UED Sentinel
微服务守护神:Spring Cloud Sentinel,让你的系统在流量洪峰中稳如磐石!
【8月更文挑战第29天】Spring Cloud Sentinel结合了阿里巴巴Sentinel的流控、降级、熔断和热点规则等特性,为微服务架构下的应用提供了一套完整的流量控制解决方案。它能够有效应对突发流量,保护服务稳定性,避免雪崩效应,确保系统在高并发下健康运行。通过简单的配置和注解即可实现高效流量控制,适用于高并发场景、依赖服务不稳定及资源保护等多种情况,显著提升系统健壮性和用户体验。
47 1