Sentinel Dashboard輕松流控
Spring Cloud Alibaba大家族裡面的輕量級流量控制架構Sentinel,為什麼叫這個名字,筆者認為架構的作者希望用這款架構為業務系統保駕護航,有了它,任何大并發的通路洪流都可以通過Sentinel控制。Sentinel已經開源,需要源碼的同學請通過下面位址下載下傳學習:
碼雲位址:https://gitee.com/mirrors/Sentinel?utm_source=alading&utm_campaign=repo
Github位址:https://github.com/alibaba/Sentinel
今天主要給大家講的是如何通過Sentinel Dashboard來對我們的系統進行限流、服務降級等。廢話不多說,趕緊進入正題。
1. 下載下傳啟動Sentinel Dashboard
https://github.com/alibaba/Sentinel/releases
筆者下載下傳的是最新的1.8版本的jar包,下載下傳後,直接用下面的指令運作起來吧
java -jar sentinel-dashboard-1.8.0.jar
這就代表啟動好了,輸入下面的位址通路Sentinel Dashboard
http://localhost:8080/#/login
使用者密碼相同,點登入進入
這是迄今為止我見過的最簡潔的首頁了,沒有之一,居然菜單都沒有,讓人不敢相信自己的眼睛。怎麼辦?點哪裡?是不是哪裡安裝錯了。Sentinel 相當于是一個保姆,是以在我們的業務系統沒有啟動之前,它是無事可幹。
2. 改造業務系統
給業務系統pom.xml添加依賴
目前spring-cloud-starter-alibaba-sentinel的所有版本如下
我選擇了使用最多的2.2.1版本,這裡你要結合你的SpringBoot的版本來,SpringBoot版本如果太低建議選擇低版本。添加依賴:
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
<version>2.2.1.RELEASE</version>
</dependency>
配置Dashboard的位址
cloud:
sentinel:
transport:
dashboard: localhost:8080
啟動你的SpringBoot項目吧,啟動完後調一下你的某個控制器的接口,再看Sentinel Dashboard就不是那樣醜了。
多調用幾次你的SpringBoot項目的某個Http接口,下面的實時監控就會顯示曲線。
你可以在流控規則和降級規則裡面設定,這個都很簡單,就是設定一個參數,Sentinel Dashboard會幫你進行流控。