首页 > 其他分享 >【Sentinel】规则持久化教程

【Sentinel】规则持久化教程

时间:2023-02-26 10:01:59浏览次数:35  
标签:教程 持久 修改 nacos sentinel 地址 源码 dashboard Sentinel


目录

​​一、修改order-service服务​​

​​1.引入依赖​​

​​2.配置nacos地址​​

​​二、修改sentinel-dashboard源码​​

​​1. 解压​​

​​2. 修改nacos依赖​​

​​3. 添加nacos支持​​

​​4. 修改nacos地址​​

​​5. 配置nacos数据源​​

​​6. 修改前端页面​​

​​7. 重新编译、打包项目​​

​​8.启动​​

一、修改order-service服务

修改OrderService,让其监听Nacos中的sentinel规则配置。

具体步骤如下:

1.引入依赖

在order-service中引入sentinel监听nacos的依赖:

<dependency>
<groupId>com.alibaba.csp</groupId>
<artifactId>sentinel-datasource-nacos</artifactId>
</dependency>

2.配置nacos地址

在order-service中的application.yml文件配置nacos地址及监听的配置信息:

spring:
cloud:
sentinel:
datasource:
flow:
nacos:
server-addr: localhost:8848 # nacos地址
dataId: orderservice-flow-rules
groupId: SENTINEL_GROUP
rule-type: flow # 还可以是:degrade、authority、param-flow

二、修改sentinel-dashboard源码

SentinelDashboard默认不支持nacos的持久化,需要修改源码。

1. 解压

解压课前资料中的sentinel源码包:

【Sentinel】规则持久化教程_sentinel

然后并用IDEA打开这个项目,结构如下:

【Sentinel】规则持久化教程_sentinel_02

 

2. 修改nacos依赖

在sentinel-dashboard源码的pom文件中,nacos的依赖默认的scope是test,只能在测试时使用,

这里要去除:

【Sentinel】规则持久化教程_java_03

将sentinel-datasource-nacos依赖的scope去掉:

<dependency>
<groupId>com.alibaba.csp</groupId>
<artifactId>sentinel-datasource-nacos</artifactId>
</dependency>

3. 添加nacos支持

在sentinel-dashboard的test包下,已经编写了对nacos的支持,我们需要将其拷贝到main下。

【Sentinel】规则持久化教程_分布式_04

4. 修改nacos地址

然后,还需要修改测试代码中的NacosConfig类:

【Sentinel】规则持久化教程_分布式_05

修改其中的nacos地址,让其读取application.properties中的配置:

【Sentinel】规则持久化教程_sentinel_06

 在sentinel-dashboard的application.properties中添加nacos地址配置:

nacos.addr=localhost:8848

5. 配置nacos数据源

另外,还需要修改com.alibaba.csp.sentinel.dashboard.controller.v2包下的FlowControllerV2类:

【Sentinel】规则持久化教程_sentinel_07

让我们添加的Nacos数据源生效:

【Sentinel】规则持久化教程_分布式_08

6. 修改前端页面

接下来,还要修改前端页面,添加一个支持nacos的菜单。

修改src/main/webapp/resources/app/scripts/directives/sidebar/目录下的sidebar.html文件:

【Sentinel】规则持久化教程_jar_09

将其中的这部分注释打开:

 修改其中的文本:

7. 重新编译、打包项目

运行IDEA中的maven插件,编译和打包修改好的Sentinel-Dashboard:

【Sentinel】规则持久化教程_java_10

8.启动

启动方式跟官方一样:

java -jar sentinel-dashboard.jar

如果要修改nacos地址,需要添加参数:

java -jar -Dnacos.addr=localhost:8848 sentinel-dashboard.jar

标签:教程,持久,修改,nacos,sentinel,地址,源码,dashboard,Sentinel
From: https://blog.51cto.com/u_15680317/6086018

相关文章

  • 【Sentinel】授权规则与规则持久化
    目录​​1.授权规则​​​​1.1.授权规则​​​​1.1.1.基本规则​​​​1.1.2.如何获取origin​​​​1.1.3.给网关添加请求头​​​​1.1.4.配置授权规则​​​​1.2.自定......
  • 【Sentinel】隔离和降级
    目录​​1.FeignClient整合Sentinel​​​​1.1.修改配置,开启sentinel功能​​​​1.2.编写失败降级逻辑​​​​1.3.总结​​​​2.线程隔离(舱壁模式)​​​​2.1.线程隔离......
  • 自己从零写操作系统GrapeOS系列教程——4.GrapeOS开发环境介绍
    1.开发环境简介为了减少开发过程中不必要的麻烦,希望大家的开发环境尽量与我的保持一致。我的开发环境如下:Windows10电脑一台VisualStudioCode(最好是最新版)VirtualB......
  • 猫抓 浏览器插件安装教程,适用Chrome浏览器和Edge浏览器
    软件截图软件介绍猫抓是一款网页媒体嗅探工具类插件,可以在任意网页中嗅探获取视频链接等数据,可以一键获取需要的链接并自动保存。使用起来十分方便,打开需要下载文件的网......
  • 1.【go-kit教程】go-kit初识
    go-kit简介go-kit本身不是一个框架,而是一套微服务工具集,是框架的底层,可以用go-kit做适应自己平台的框架。它的设计目标是帮助开发者构建健壮、可维护、可测试的分布式......
  • 9.【go-kit教程】go-kit集成Prometheus
    在Gokit中集成Prometheus进行API监控可以帮助开发人员更好地了解系统的性能和行为,提高系统的可观察性和可靠性。下面是一个简单的示例,演示如何在Gokit中集成P......
  • java security 详解_Spring Security入门教程
    SpringSecurity的简单使用简介SSM整合Security是比较麻烦的,虽然Security的功能比Shiro强大,相反却没有Shiro的使用量多SpringBoot出现后简化了Spring系列的配置......
  • 《Redis官方教程》-FAQ
    《Redis官方教程》-FAQ简介:为什么Redis不同于其他的键值存储数据库?有两个主要原因:Redis发展方向不同与其他键值数据库,它能包含很多复杂数据类型,对这些数据类型操作......
  • 持久化_AOF 与Jedis_快速入门
    持久化_AOF1.AOF:日志记录的方式,可以记录每一条命令的操作。可以每一次命令操作后,持久化数据 1.编辑redis.windwos.conf文件 ......
  • redis_命令操作_通用命令与redis_持久化_RDB
    redis_命令操作_通用命令1.keys*:查询所有的键2.typekey:获取键对应的value的类型3.delkey:删除指定的keyvalue   redis_持久化_......