Spring Cloud Alibaba系列(六)sentinel的实际应用
一、sentinel的持久化配置 上一章中我们通过Dashboard来为Sentinel客户端设置各种各样的规则,但是这些规则默认是存放在内存中,极不稳定,无法用于生成环境,所以需要将其持久化。 DataSource 扩展常见的实现方式有: 拉模式 :客户端主动向某个规则管理中心定期轮询拉取规则,这个规则中心可以是 RDBMS、文件,甚至是 VCS 等。这样做的方式是简单,缺点是无法及时获取变更; 推模式 :规则中心统一推送,客户端通过注册监听器的方式时刻监听变化,比如使用 Nacos 、Zookeeper 等配置中心。这种方式有更好的实时性和一致性保证。 Sentinel 目前支持以下数据源扩展: Pull-based: 文件、 Consul Push-based: ZooKeeper , Redis , Nacos , Apollo , etcd 生产环境中一般常用的就是 推模式 。这里我们使用Nacos存储规则。推送模式的正确做法应该是 配置中心控制台/Sentinel 控制台 → 配置中心 → Sentinel 数据源 → Sentinel 。 1.1 sentinel同步nacos配置 增加sentinel的依赖和nacos存储扩展依赖 <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring