sentinel+nacos配置持久化
·
sentinel控制台 安装
jar下载:https://github.com/alibaba/Sentinel/releases
windows启动脚本:
# 节点启动脚本
@echo off
title sentinel
D:
cd D:\DataBase\sentinel
java -Dserver.port=6789 -Dcsp.sentinel.dashboard.server=localhost:6789 -Dproject.name=sentinel-dashboard -jar sentinel-dashboard-1.8.8.jar
springboot客户端
maven
<!--sentinel-->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
<version>x.x.x</version>
</dependency>
配置
spring:
cloud:
#sentinel
sentinel:
transport:
dashboard: 127.0.0.1:6789
# 指定客户端监控 API 的端口(默认是 8719)
#port: 8719
初始化
确保客户端有访问量,Sentinel 会在客户端首次调用的时候进行初始化,开始向控制台发送心跳包。
持久化
sentinel控制台
nacos控制台
结果: 配置信息可以持久化,系统重新后配置信息依然存在
修改步骤
- 1.下载源码 : https://github.com/alibaba/Sentinel/releases
- 2.放开引入的nacos数据源
-
3.把框架提供的demo类放到工程中
-
4.修改策略规则 (详情见代码)
这里是所有的策略规则,可以根据自己需求改写不同的规则类,这里以流控规则为例(其他同理)关键代码:
-
5.配置nacos地址和命名空间 【抽离到配置文件方便配置】
(com.alibaba.csp.sentinel.dashboard.rule.nacos.NacosConfig.java)
-
6.配置群组【抽离到配置文件方便配置】
-
7.添加配置文件
修改完成后打包使用即可。 -
8.客户端配置
测试
在nacos 和sentinel 修改配置 、配置信息都可以互相同步,重启服务后依然存在
可以把nacos的数据持久到数据库(数据库备份,保证数据不会丢失)
说明
- 此方法尚未在生产环境验证,不能确保 稳定性、时效性、准确定,如果要求高的生产环境 可购买阿里云的AHAS 【开通地址:https://ahas.console.aliyun.com/】
- 一下步工作 会对此方法进行全方位测试,验证其生产环境的可用性
- 其他修改请自行研究相关源码
更多推荐
所有评论(0)