一、Sentinel介绍
Sentinel 是阿里云开发的一款用于流量控制、熔断降级、系统负载保护的轻量级库。它可以帮助开发者保障系统的稳定性,在分布式服务架构中,Sentinel 能够对服务提供一定的保护,避免因为某个服务的故障而影响全局。
Sentinel 的主要功能包括:
流量控制:通过限制请求的速率,防止过多的请求冲垮系统。
熔断降级:在服务出现故障或响应过慢时,自动熔断该服务的调用,保护系统的其他部分。
系统负载保护:通过监控系统负载,当达到一定阈值时,自动触发降级策略,保护系统不被破坏。
在实际应用中,Sentinel 通常被用在分布式服务架构中的微服务之间,以确保整个系统的稳定性。
例如,在一个电商应用中,如果订单服务出现故障,那么购物车服务和用户服务可能会受到影响。通过使用 Sentinel,可以在订单服务出现问题时自动熔断购物车服务和用户服务的调用,避免故障蔓延。
总之,Sentinel 是一款实用的库,旨在帮助开发者构建更加稳定、可靠的系统。
二、微服务集成Sentinel
加入依赖
<!--使用openFeign-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>
<!--服务熔断 -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
</dependency>
三、安装Sentinel控制台
3.1 下载jar包,解压到文件夹
3.2 启动控制台
执行命令
java -Dserver.port=8888 -Dcsp.sentinel.dashboard.server=localhost:8888 -Dproject.name=sentinel-dashboard -jar sentinel-dashboard-1.8.1.jar