Sentinel 介绍
随着微服务的流行,服务和服务之间的稳定性变得越来越重要。 Sentinel 以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性。
Sentinel 具有以下特征:
丰富的应用场景: Sentinel 承接了阿里巴巴近 10 年的双十一大促流量的核心场景,例如秒杀(即突发流量控制在系统容量可以承受的范围)、消息削峰填谷、实时熔断下游不可用应用等。
完备的实时监控: Sentinel 同时提供实时的监控功能。您可以在控制台中看到接入应用的单台机器秒级数据,甚至 500 台以下规模的集群的汇总运行情况。
广泛的开源生态: Sentinel 提供开箱即用的与其它开源框架/库的整合模块,例如与 Spring Cloud、Dubbo、gRPC 的整合。您只需要引入相应的依赖并进行简单的配置即可快速地接入 Sentinel。
完善的 SPI 扩展点: Sentinel 提供简单易用、完善的 SPI 扩展点。您可以通过实现扩展点,快速的定制逻辑。例如定制规则管理、适配数据源等。
本文通过Sentinel_dashBoard进行讲解,当然不引入监控看板也能实现限流熔断降级功能,但是监控看板能够直观的看到请求的QPS,成功率等等,同时可以实时的进行降级限流策略的修改与新建。
sentinel_dashboard的引入
https://github.com/alibaba/Sentinel/releases,本人下载sentinel-dashboard-1.8.0.jar

该项目是纯纯的springboot项目,在CMD模式下使用命令
java -Dserver.port=8181 -Dcsp.sentinel.dashboard.server=localhost:8181
-Dproject.name=sentinel-dashboard -jar sentinel-dashboard-1.8.0.jar
其中,-Dserver.port=8181 代表sentinel控制台项目的端口号,
-Dcsp.sentinel.dashboard.server=localhost:8181 代表本看板服务将会注册到自己的看板上,
-Dproject.name=sentinel-dashboard代表本看板服务的项目名称。
访问localhost:8181;用户名,密码均是sentinel
如果要自定义用户名和密码,在启动命令加上-Dsentinel.dashboard.auth.username=sentinel,
-Dsentinel.dashboard.auth.password=123456即可。

可以看到自身的服务已经注册到了控制台上。
springboot工程快速接入dashboard
<!-- 限流、熔断框架 不连通客户端本地可用 --> <dependency> <groupId>com.alibaba.csp</groupId>

Sentinel是一个流量控制、熔断降级的开源库,广泛应用于微服务稳定性保障。本文介绍了如何启动Sentinel Dashboard,通过配置Sentinel Dashboad监控服务,并展示了将降级规则持久化到MySQL数据库的过程,确保规则在服务重启后依然有效。此外,还讨论了如何自定义异常处理,统一处理Sentinel的各种异常情况。
最低0.47元/天 解锁文章
1万+





