Spring Cloud Alibaba(四):Spring Cloud 使用 Sentinel 实现限流

本文介绍了如何在Spring Cloud项目中集成Sentinel,通过Sentinel控制台实现流量控制、熔断降级,保障服务稳定性。Sentinel是一个强大的高可用流量防护组件,具备丰富的应用场景和实时监控能力。文中详细展示了Sentinel控制台的安装启动,以及在Spring Cloud项目中设置限流规则,并进行了实际测试验证限流效果。
摘要由CSDN通过智能技术生成

本文为 Spring Cloud Alibaba 系列 的第四篇文章,系列文章持续更新,点此 查看更多

本示例代码基于之前的 m01 模块代码改造,项目启动依赖同 m01 模块,读者可以阅读此博文 《使用 Nacos + Dubbo 实现的远程服务调用》 了解 m01 模块代码功能。
本示例完整代码 点此查看

Sentinel 介绍

Sentinel 是面向分布式服务架构的高可用流量防护组件,随着微服务的流行,服务和服务之间的稳定性变得越来越重要。 Sentinel 以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性。

Sentinel 具有以下特征:

  • 丰富的应用场景: Sentinel 承接了阿里巴巴近 10 年的双十一大促流量的核心场景,例如秒杀(即突发流量控制在系统容量可以承受的范围)、消息削峰填谷、实时熔断下游不可用应用等。
  • 完备的实时监控: Sentinel 同时提供实时的监控功能。您可以在控制台中看到接入应用的单台机器秒级数据,甚至 500 台以下规模的集群的汇总运行情况。
  • 广泛的开源生态: Sentinel 提供开箱即用的与其它开源框架/库的整合模块,例如与 Spring Cloud、Dubbo、gRPC 的整合。您只需要引入相应的依赖并进行简单的配置即可快速地接入 Sentinel。
  • 完善的 SPI 扩展点: Sentinel 提供简单易用、完善的 SPI 扩展点。您可以通过实现扩展点,快速的定制逻辑。例如定制规则管理、适配数据源等。

本文将介绍如何在 Spring Cloud 项目中使用 Sentinel 进行限流。

Sentinel 控制台安装与启动

获取控制台

可以从 release 页面 下载最新版本的控制台 jar 包。

也可以从最新版本的源码自行构建 Sentinel 控制台:

  • 下载 控制台 工程
  • 使用以下命令将代码打包成一个 fat jar: mvn clean package

启动控制台

Sentinel 控制台是一个标准的 Spring Boot 应用,以 Spring Boot 的方式运行 jar 包即可,本例中笔者下载的为 sentinel-dashboard-1.7.1,启动命令如下:

java -Dserver.port=8019 -Dcsp.sentinel.dashboard.server=localhost:8019 -Dproject.name=sentinel-dashboard -jar sentinel-dashboard-1.7.1.jar

若启动时端口冲突,可使用 -Dserver.port=新端口 指定使用其他端口。

此处笔者使用 8019 端口启动 Sentinel 控制台,访问 http://localhost:8019 ,用户及密码默认都为 sentinel,登录成功进入如下界面:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值