Sentinel持久化问题:Sentinel Dashboard中添加的规则是存储在内存中的,只要项目一重启规则就丢失了

Sentinel工作模式

  • 在 Sentinel 客户端(微服务)中用代码写的配置,在启动后,当有第一次流量进来的时候,会推送给 Sentinel-Dashboard
  • 在 Sentinel-Dashboard 中的配置,会被推送到 Sentinal 客户端(微服务)
  • 默认情况下,不论 Sentinel-Dashboard 中的配置还是 Sentinal 客户端中的配置,都是在内存中的,一点重启,这些变化过的规则就都消失了

Sentinel引入配置中心

此处将规则持久化到nacos中,在nacos中添加规则,然后同步到dashboard中

  • Sentinel-Dashboard 需要知道,当配置发生变化的时候,要把配置推送到配置中心,持久话保存起来
  • 客户端要知道,配置全在配置中心里存的呢,一旦配置发生变化,配置中心要把配置推给我
  • 这样的话,不论是 Sentinel-Dashboard 还是 Sentinel 客户端重启后,都不会丢失配置

实现过程

第一步:导入依赖包

<!--springcloud ailibaba sentinel-datasource-nacos 后续做持久化用到-->
<dependency>
<groupId>com.alibaba.csp</groupId>
<artifactId>sentinel-datasource-nacos</artifactId>
</dependency>

第二步:编写 application.yml,添加 sentinel 注册到 nacos 的配置

server:
port: 6001 spring:
application:
name: sentinel-service
cloud:
nacos:
discovery:
server-addr: 127.0.0.1:8858
sentinel:
transport:
port: 8719
dashboard: 127.0.0.1:8080
datasource:
ds1:
nacos:
server-addr: 127.0.0.1:8858
dataId: sentinel-service
groupId: DEFAULT_GROUP
data-type: json
rule-type: flow management:
endpoints:
web:
exposure:
include: '*'

第三步:在 nacos 后台配置中心进行配置

[
{
"resource": "/sentinel/service",
"limitApp": "default",
"grade": 1,
"count": 1,
"strategy": 0,
"controlBehavior": 0,
"clusterMode": false
}
]
  • resource:资源名称
  • limitApp:来源应用
  • grade:阈值类型,0表示线程数,1表示QPS
  • count:单机阈值
  • strategy:流控模式,0表示直接,1表示关联,2表示链路
  • controlBehavior:流控效果,0表示快速失败,1表示Warm Up,2表示排队等待
  • clusterMode:是否集群

第四步:对 FlowLimitController 接口 /sentinel/service 进行测试,发现项目进行重启,服务限流规则依然存在

[Alibaba微服务技术入门]_Sentinel持久化_第18讲的更多相关文章

  1. Spring Cloud Alibaba微服务架构入门最容易理解篇

    微服务架构介绍 Spring Cloud Alibaba推荐的微服务生态架构基于分层架构实现如下: 接入层:最外层为LVS+Keepalived,可承受几十万级高并发流量洪峰,然后再通过内层的ngin ...

  2. 🏆【Alibaba微服务技术系列】「Dubbo3.0技术专题」回顾Dubbo2.x的技术原理和功能实现及源码分析(温故而知新)

    RPC服务 什么叫RPC? RPC[Remote Procedure Call]是指远程过程调用,是一种进程间通信方式,他是一种技术的思想,而不是规范.它允许程序调用另一个地址空间(通常是共享网络的另 ...

  3. 架构师成长之路也该了解的新一代微服务技术-ServiceMesh(上)

    架构演进 发展历程 我们再来回顾一下架构发展历程,从前往后的顺序依次为单机小型机->垂直拆分->集群化负载均衡->服务化改造架构->服务治理->微服务时代 单机小型机:采 ...

  4. 微服务(入门一):netcore安装部署consul

    环境准备  vs开发环境:vs2017 consul版本: 1.4.4 netcore版本:2.1 安裝Consul  1.从官网下载consul到本地,选择系统对应的版本进行下载到本地,下载地址:h ...

  5. AG-Admin微服务框架入门

    AG-Admin微服务框架入门  @qq群:一群: 837736451  二群 169824183 一 概要介绍 AG-Admin后台地址:https://gitee.com/minull/ace-s ...

  6. 异数OS 星星之火(三)--异数OS-织梦师云 微服务编写入门

    . 异数OS 星星之火(三)–异数OS-织梦师云 微服务编写入门 本文来自异数OS社区 github: https://github.com/yds086/HereticOS 异数OS社区QQ群: 6 ...

  7. 【微服务技术专题】Netflix动态化配置服务-微服务配置组件变色龙Archaius

    前提介绍 如果要设计开发一套微服务基础架构,参数化配置是一个非常重要的点,而Netflix也开源了一个叫变色龙Archaius的配置中心客户端,而且Archaius可以说是比其他客户端具备更多生产级特 ...

  8. 微服务技术栈简单介绍,Eureka和Ribbon的引入和使用

    一.了解微服务架构 1.微服务技术栈 整体框架 整体学习规划路线2.微服务与单体架构的区别 单体架构:将业务的所有功能集中在一个项目中开发,打成一个包部署 优势 结构简单 部署成本低 缺点 耦合度高, ...

  9. SpringCloud————>了解什么是微服务技术

    SpringCloud是Spring为微服务架构思想做的一个一站式实现.从某种程度是可以简单的理解为,微服务是一个概念.一个项目开发的架构思想.SpringCloud是微服务架构的一种java实现. ...

  10. 微服务(入门四):identityServer的简单使用(客户端授权)

    IdentityServer简介(摘自Identity官网) IdentityServer是将符合规范的OpenID Connect和OAuth 2.0端点添加到任意ASP.NET核心应用程序的中间件 ...

随机推荐

  1. flink 1.11.2 学习笔记(3)-统计窗口window

    接上节继续,通常在做数据分析时需要指定时间范围,比如:"每天凌晨1点统计前一天的订单量" 或者 "每个整点统计前24小时的总发货量".这个统计时间段,就称为统计 ...

  2. 使用Thread实现可以突破系统最小时间间隔的Timer

    使用System.Timers.Timer和System.Threading.Timer创建的计时器会受系统最小时间间隔限制,在 Windows 系统中,默认的最小时间间隔为 15.6 毫秒(数据来自 ...

  3. 使用 chezmoi & vscode, 管理你的 dotfiles

    什么是 dotfiles In Unix-like operating systems, any file or folder that starts with a dot character (fo ...

  4. Visual Studio 2022 入门指南

    Visual Studio 2022 入门指南 目录 Visual Studio 2022 入门指南 解决方案(Solution)与项目(Project) 过滤器(Filter) 如何正确配置包含目录 ...

  5. MySQL InnoDB存储引擎 内存结构

    MySQL InnoDB存储引擎的内存结构是其高性能的核心,主要用来缓存数据和日志信息,从而最大限度地减少对磁盘I/O的访问.其关键的内存结构组件如下: ​​缓冲池 (Buffer Pool)​​ ​ ...

  6. Makefile中.PHONY的作用-make&& make install

    原文链接:https://blog.csdn.net/derkampf/article/details/70256891 一.实例        拿clean举例,如果make完成后,自己另外定义一个 ...

  7. Java学习:工具类、构造器、实体类使用场景

    封装的设计要求:合理隐藏.合理暴露 合理隐藏:创建成员变量时,使用private修饰 private int id; // 电影编号 合理暴露:创建成员方法时,使用public修饰的get方法和set ...

  8. 一文读懂:AI创业和投融资领域常见专有名词缩写详解

    === 预计悦读时间:3分钟 | 字数:约1000字--知识满满,不虚此行! 为什么你需要这篇神器? 就像由算法推荐给各位好奇的同学一样,我也被这些术语所困扰,想象一下,你正沉浸在一场关于AI的精彩演 ...

  9. 故障处理:偶遇Oracle备份与还原的未知重大BUG

    我们的文章会在微信公众号IT民工的龙马人生和博客网站( www.htz.pw )同步更新 ,欢迎关注收藏,也欢迎大家转载,但是请在文章开始地方标注文章出处,谢谢! 由于博客中有大量代码,通过页面浏览效 ...

  10. 【渲染流水线】[光栅阶段]-[光栅插值]以UnityURP为例

    作用‌:将几何图元(三角形)转换为片元(Fragment),并插值顶点属性(如纹理坐标) ‌可配置‌:通过 Cull 指令控制面片剔除模式(Back/Front/Off). [从UnityURP开始探 ...