一 Sentinel的作用
二 下載下傳Sentinel
官網下載下傳位址:https://github.com/alibaba/Sentinel/releases,選擇下載下傳目前穩定版,這裡下載下傳的是sentinel-dashboard-1.7.1.jar。
三 Sentinel安裝和啟動
(1). 将下載下傳的sentinel-dashboard-1.7.1.jar上傳到伺服器192.168.1.7,通過指令啟動,
nohup java -jar sentinel-dashboard-1.7.1.jar >log.file 2>&1 &
(2). 将192.168.1.1,192.168.1.2,192.168.1.3伺服器上的使用者微服務,商品微服務,訂單微服務,網關全部啟動。
(3).通路 http://192.168.1.7:8080 進入到sentinel管理控制台
第一次進來點簇點鍊路裡面是空白的,需要我們通路一次微服務才能看見,通路下訂單微服務http://192.168.1.13/order/save?userId=1&productId=1&amount=1&token=1
再次打開簇點鍊路
四 流控規則
因為是測試,這個做個最簡單的限流,1秒鐘隻允許下1次訂單(/order/save),如超過次數1,就直接快速失敗,報預設錯誤。
選擇訂單下單微服務,點流控
通路下訂單微服務http://192.168.1.13/order/save?userId=1&productId=1&amount=1&token=1,快速點選重新加載此頁,會出現錯誤Blocked by Sentinel (flow limiting)
五 規則持久化
一旦我們重新開機應用,sentinel規則消失,生産環境需要将将限流規則持久進Nacos儲存。
1.yml檔案添加Nacos資料源配置
打開訂單微服務yml檔案,添加
datasource:
ds1:
nacos:
server-addr: 192.168.1.14:8848
dataId: cloudalibaba-sentinel-service
groupId: DEFAULT_GROUP
data-type: json
rule-type: flow
2.通路http://192.168.1.14:8848進入Nacos控制台管理,配置管理-配置清單,點選+号。
3.通路http://192.168.1.7:8080,打開流控規則,會看到剛才在Nacos裡面配置的規則