前情提要 : 本文基於 SpringCloud H系列 alibaba 2.1.1 (一) sentinel 限流熔斷(基於dubbo)
1.下載sentinel-dashboard
版本使用 1.7.0
下載完成後 本地啓動 sentinel-dashboard-1.7.0.jar
java -jar sentinel-dashboard-1.7.0.jar
- -Dserver.port 指定服務端口
- -Dcsp.sentinel.dashboard.server 指定對位暴露地址
- -Dsentinel.dashboard.auth.username 設置用戶名
- -Dsentinel.dashboard.auth.password 設置密碼
- -Dproject.name 設置應用項目名
- -Dserver.servlet.session.timeout 設置session超時時間
默認端口8080 默認賬號密碼 sentinel
訪問 localhost:8080 登錄控制檯
由於目前沒有服務註冊 所以控制檯上並沒有實例
2.改造dubbo消費端 集成sentinel控制檯
在 alibaba-sentinel-dubbo-client 項目中增加依賴
<dependency>
<groupId>com.alibaba.csp</groupId>
<artifactId>sentinel-transport-simple-http</artifactId>
</dependency>
在nacos 中 application-sentinel-dubbo-client.yml配置文件中
增加以下配置
spring:
cloud:
# sentinel 控制檯地址 註冊服務
sentinel:
transport:
dashboard: 127.0.0.1:8080
啓動消費端服務 查看sentinel控制檯
註冊成功
查看流控規則
這裏是我們使用代碼配置的規則 QPS大於1熔斷
3.測試控制檯功能
修改閥值爲5
瘋狂訪問 localhost:8002/test?name=Lion Li
查看實時監控
通過QPS最高爲5 到達5後限流熔斷
控制檯集成成功
sentinel 控制檯功能非常之多 感興趣的可以查看官方文檔具體學習 這裏我就不細說了
項目已上傳到gitee
地址: spring-cloud-alibaba-H-demo
如果幫到您了,請幫忙點個star