Sentinel-流量防卫兵

本文详细介绍了Sentinel流量防卫兵的特性、应用场景,并通过Spring Boot项目展示了如何配置Sentinel,包括流控规则、熔断规则和系统保护规则。同时,讨论了Sentinel控制台数据展示问题及与Nacos配置中心的数据一致性问题,提供了源码分析和自定义拦截Slot的实现。
摘要由CSDN通过智能技术生成

🚀 优质资源分享 🚀

学习路线指引(点击解锁) 知识定位 人群定位
🧡 Python实战微信订餐小程序 🧡 进阶级 本课程是python flask+微信小程序的完美结合,从项目搭建到腾讯云部署上线,打造一个全栈订餐系统。
💛Python量化交易实战💛 入门级 手把手带你打造一个易扩展、更安全、效率更高的量化交易系统

1.背景

1.1 简介

Sentinel 以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性。

Sentinel 具有以下特征
  • 丰富的应用场景:Sentinel 承接了阿里巴巴近 10 年的双十一大促流量的核心场景,例如秒杀(即突发流量控制在系统容量可以承受的范围)、消息削峰填谷、集群流量控制、实时熔断下游不可用应用等。

  • 完备的实时监控:Sentinel 同时提供实时的监控功能。您可以在控制台中看到接入应用的单台机器秒级数据,甚至 500 台以下规模的集群的汇总运行情况。

  • 广泛的开源生态:Sentinel 提供开箱即用的与其它开源框架/库的整合模块,例如与 Spring Cloud、Apache Dubbo、gRPC、Quarkus 的整合。您只需要引入相应的依赖并进行简单的配置即可快速地接入 Sentinel。同时 Sentinel 提供 Java/Go/C++ 等多语言的原生实现。

  • 完善的 SPI 扩展机制:Sentinel 提供简单易用、完善的 SPI 扩展接口。您可以通过实现扩展接口来快速地定制逻辑。例如定制规则管理、适配动态数据源等。

Sentinel 的主要特性
  • 核心库(Java 客户端)不依赖任何框架/库,能够运行于所有 Java 运行时环境,同时对 Dubbo / Spring Cloud 等框架也有较好的支持。

  • 控制台(Dashboard)基于 Spring Boot 开发,打包后可以直接运行,不需要额外的 Tomcat 等应用容器。

1.2 学习参考

1.3 章节介绍

本文主要介绍以下知识点:

  • 基于Spring boot 对接Sentinel;

  • Nacos配置Sentinel规则信息;

  • 测试流控规则,系统保护规则,熔断规则;

  • Sentinel控制台数据展示问题;

  • Nacos规则存储与Sentinel修改数据同步问题;

  • Sentinel责任链模式分析

2.项目构建

2.1 pom配置


        <dependency>
            <groupId>com.alibaba.cloudgroupId>
 <artifactId>spring-cloud-starter-alibaba-nacos-configartifactId>
 <version>2.2.6.RELEASEversion>
 dependency>
 <dependency>
 <groupId>com.alibaba.cloudgroupId>
 <artifactId>spring-cloud-starter-alibaba-nacos-discoveryartifactId>
 <version>2.2.6.RELEASEversion>
 dependency>
 
 <dependency>
 <groupId>com.alibaba.cloudgroupId>
 <artifactId>spring-cloud-starter-alibaba-sentinelartifactId>
 <version>2.2.6.RELEASEversion>
 dependency>
 
 <dependency>
 <groupId>com.alibaba.cspgroupId>
 <artifactId>sentinel-datasource-nacosartifactId>
 <version>1.8.3version>
 dependency>

2.2 项目参数配置

server:
 ser
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值