前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【Sentinel】规则持久化教程

【Sentinel】规则持久化教程

作者头像
陶然同学
发布2023-02-24 11:18:52
3480
发布2023-02-24 11:18:52
举报
文章被收录于专栏:陶然同学博客

目录

一、修改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的依赖:

代码语言:javascript
复制
<dependency>
    <groupId>com.alibaba.csp</groupId>
    <artifactId>sentinel-datasource-nacos</artifactId>
</dependency>

2.配置nacos地址

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

代码语言:javascript
复制
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源码包:

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

2. 修改nacos依赖

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

这里要去除:

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

代码语言:javascript
复制
<dependency>
    <groupId>com.alibaba.csp</groupId>
    <artifactId>sentinel-datasource-nacos</artifactId>
</dependency>

3. 添加nacos支持

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

4. 修改nacos地址

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

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

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

代码语言:javascript
复制
nacos.addr=localhost:8848

5. 配置nacos数据源

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

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

6. 修改前端页面

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

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

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

 修改其中的文本:

7. 重新编译、打包项目

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

8.启动

启动方式跟官方一样:

代码语言:javascript
复制
java -jar sentinel-dashboard.jar

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

代码语言:javascript
复制
java -jar -Dnacos.addr=localhost:8848 sentinel-dashboard.jar
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-02-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、修改order-service服务
  • 1.引入依赖
    • 2.配置nacos地址
    • 二、修改sentinel-dashboard源码
    • 1. 解压
    • 2. 修改nacos依赖
    • 3. 添加nacos支持
    • 4. 修改nacos地址
    • 5. 配置nacos数据源
    • 6. 修改前端页面
    • 7. 重新编译、打包项目
    • 8.启动
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档