日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

Spring Cloud Alibaba —— Sentinel 入门

發布時間:2025/3/12 javascript 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Spring Cloud Alibaba —— Sentinel 入门 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

導航

  • 一、什么是Sentinel
    • 1.1 Sentinel 的優點
  • 二、整合 Sentinel 演示
  • 三、Sentinel控制臺與微服務通信的原理
  • 四、Sentinel 流控演示

一、什么是Sentinel

Sentinel 是阿里開源的用于提供微服務架構容錯方案的組件。它以流量作為切入點,從流量控制、熔斷降級、系統負載保護 這三個主要緯度保證整體服務的穩定性。Sentinel 可分為兩部分:核心庫(Java 客戶端)控制臺(dashboard)。核心庫不依賴任何框架或類庫,運行于所有Java運行時上。控制臺基于 Spring Boot 開發,打包后可直接運行。

1.1 Sentinel 的優點

  • 豐富的應用場景:秒殺、消息削峰填谷、集群流量控制、實時熔斷下游。
  • 完備的實時監控:實時監控功能,例如通過控制臺可以看到單節點秒級數據,甚至是500臺服務器以下規模的集群匯總運行情況。
  • 開源生態:提供開箱即用的,可與其他開源框架整合的模塊,如 Spring Cloud、Dubbo、gRPC 等。
  • SPI 擴展點:完善的 SPI 擴展接口,方便快速定制規則,適配動態數據源等。
  • 二、整合 Sentinel 演示

    Sentinel 分為兩部分,整合 Sentinel 需要在上游微服務中添加相應依賴,例如 order 服務調用 product,就需要在 order 微服務中加入 sentinel starter。

  • 添加依賴
    shop-order 微服務
  • <dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-sentinel</artifactId></dependency>
  • 添加測試接口
  • @Slf4j @RestController @RequestMapping("/order") public class OrderController {@GetMapping("/message1")public String message1() {return "message1";}// ... }
  • 下載 dashboard 控制臺
    https://github.com/alibaba/Sentinel/wiki/Dashboard

    下載后使用如下命令,執行jar包:
  • java -Dserver.port=8080 -Dcsp.sentinel.dashboard.server=localhost:8080 -Dproject.name=sentinel-dashboard -jar sentinel-dashboard-1.8.2.jar

    啟動成功后,打開瀏覽器,訪問 localhost:8080 登錄名密碼都是 sentinel,就可以進入sentinel dashboard:

  • 將 shop-order 微服務實例接入 sentinel
    這一步需要在 配置文件中加入 如下配置:
  • spring:cloud:sentinel:transport:dashboard: localhost:8080 # sentinel dashboard 服務ip和端口地址port:9999 # 與sentinel dashboard 傳輸數據的端口,隨意指定一個未使用的端口即可
  • 測試
    加好配置后,啟動微服務 : shop-order ,由于sentinel 是懶加載的,必須調用一次接口之后才能顯示在控制臺。
  • 三、Sentinel控制臺與微服務通信的原理

    Sentinel 控制臺實際上就是一個 Spring boot 項目。我們需要將應用微服務注冊到控制臺上,即在微服務中指定控制臺的地址,并且還要開啟一個跟控制臺傳遞數據的端口。控制臺也可以通過此端口調用微服務中的監控程序獲取微服務的各種信息。

    四、Sentinel 流控演示

    簡單演示一下 Sentinel 的流控效果。

    要求:實現對接口 /order/message1 的流控,限制每秒訪問請求最多2個,超出的請求被攔截掉。

    打開控制臺“流控規則” 設置卡,添加流控規則:

    新增后,嘗試請求接口:


    頻繁刷新后,就會偶爾出現請求被流控調的返回信息,證明 sentinel 流控成功。

    總結

    以上是生活随笔為你收集整理的Spring Cloud Alibaba —— Sentinel 入门的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。