Sentinel:分布式系统的流量防卫兵
Sentinel Dashboard:是Sentinel 提供一个轻量级的开源控制台,它提供服务发现以及健康情况管理、监控(单机和集群),规则管理和推送的功能
本次使用的版本:sentinel-dashboard-1.6.0.jar
其他版本:Sentinel/releases
1 下载好以后通过命令启动,默认8080端口,可以使用-Dserver.port=8888控制启动端口,默认用户和密码都是sentinel,
-
-Dsentinel.dashboard.auth.username=sentinel
: 用于指定控制台的登录用户名为 sentinel; -
-Dsentinel.dashboard.auth.password=123456
: 用于指定控制台的登录密码为 123456;如果省略这两个参数,默认用户和密码均为 sentinel -
-Dserver.servlet.session.timeout=7200
: 用于指定 Spring Boot 服务端 session 的过期时间,如 7200 表示 7200 秒;60m 表示 60 分钟,默认为 30 分钟
java -jar sentinel-dashboard-1.6.0.jar
2 本地测试项目集成整合Sentinel:
a pom依赖:
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId> <version>0.2.1.RELEASE</version> </dependency>
b 配置文件新增:
spring.application.name=sentinel-dashboard-web
spring.cloud.sentinel.transport.dashboard=localhost:8080
c 新增测试api
@RestController public class SentinelDashboardTest { @GetMapping("/hello") public String hello() { return "SentinelDashboardTest"; } }
3 应用启动,直接浏览器访问 http://localhost:8082/hello,刷新控制台
4 配置限流规则
簇点链路新增:
流控规则:
配置好以后浏览器快速刷新3次,一般手速都可以,不行可以把流控配置成1,发现第三次直接被限流:
5 熔断降级
使用感受:香,是真的香!!!