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 熔斷降級
使用感受:香,是真的香!!!