javascript
Spring Cloud Alibaba —— Sentinel 入门
導航
- 一、什么是Sentinel
- 1.1 Sentinel 的優(yōu)點
- 二、整合 Sentinel 演示
- 三、Sentinel控制臺與微服務通信的原理
- 四、Sentinel 流控演示
一、什么是Sentinel
Sentinel 是阿里開源的用于提供微服務架構容錯方案的組件。它以流量作為切入點,從流量控制、熔斷降級、系統(tǒng)負載保護 這三個主要緯度保證整體服務的穩(wěn)定性。Sentinel 可分為兩部分:核心庫(Java 客戶端) 和 控制臺(dashboard)。核心庫不依賴任何框架或類庫,運行于所有Java運行時上。控制臺基于 Spring Boot 開發(fā),打包后可直接運行。
1.1 Sentinel 的優(yōu)點
二、整合 Sentinel 演示
Sentinel 分為兩部分,整合 Sentinel 需要在上游微服務中添加相應依賴,例如 order 服務調用 product,就需要在 order 微服務中加入 sentinel starter。
shop-order 微服務
https://github.com/alibaba/Sentinel/wiki/Dashboard
下載后使用如下命令,執(zhí)行jar包:
啟動成功后,打開瀏覽器,訪問 localhost:8080 登錄名密碼都是 sentinel,就可以進入sentinel dashboard:
這一步需要在 配置文件中加入 如下配置:
加好配置后,啟動微服務 : shop-order ,由于sentinel 是懶加載的,必須調用一次接口之后才能顯示在控制臺。
三、Sentinel控制臺與微服務通信的原理
Sentinel 控制臺實際上就是一個 Spring boot 項目。我們需要將應用微服務注冊到控制臺上,即在微服務中指定控制臺的地址,并且還要開啟一個跟控制臺傳遞數(shù)據(jù)的端口。控制臺也可以通過此端口調用微服務中的監(jiān)控程序獲取微服務的各種信息。
四、Sentinel 流控演示
簡單演示一下 Sentinel 的流控效果。
要求:實現(xiàn)對接口 /order/message1 的流控,限制每秒訪問請求最多2個,超出的請求被攔截掉。
打開控制臺“流控規(guī)則” 設置卡,添加流控規(guī)則:
新增后,嘗試請求接口:
頻繁刷新后,就會偶爾出現(xiàn)請求被流控調的返回信息,證明 sentinel 流控成功。
總結
以上是生活随笔為你收集整理的Spring Cloud Alibaba —— Sentinel 入门的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java 新建 api 案列_Java利
- 下一篇: python if try except