Spring Cloud Alibaba微服務(wù)系列-服務(wù)限流、熔斷、降級Sentinel

一、前言

Sentinel 是面向分布式服務(wù)架構(gòu)的高可用流量防護組件,主要以流量為切入點,從限流、流量整形、熔斷降級、系統(tǒng)負載保護、熱點防護等多個維度來幫助開發(fā)者保障微服務(wù)的穩(wěn)定性。

例如搶購秒殺系統(tǒng),在很短的時間會有非常大的并發(fā)請求過來,如果不做限流可能一下子服務(wù)器就崩了。

二、安裝

下載地址:https://github.com/alibaba/Sentinel/releases

運行

java -Dserver.port=8080 -Dcsp.sentinel.dashboard.server=localhost:8080 -Dproject.name=sentinel-dashboard -jar sentinel-dashboard.jar

訪問:http://localhost:8080/

1.png

用戶名和密碼:sentinel

三、使用

3.1 maven 依賴

pom.xml中加入如下依賴:

<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
</dependency>

3.2 application.properties

# dashboard
spring.cloud.sentinel.transport.dashboard=localhost:8080

四、測試

jmeter循環(huán)請求。
可以看到qps(Queries-per-second)2萬左右。

QQ截圖20210528105310.png

加上流量控制,qps 5000封頂


QQ截圖20210528105749.png

監(jiān)控臺可以看到通過的qps封頂5000,其它的都被拒絕了。


QQ截圖20210528110333.png

流量控制規(guī)則多種,有快速失敗、Warm Up、排隊等待??梢愿鶕?jù)實際情況來配置。


QQ截圖20210528110253.png

五、結(jié)語

源碼地址:https://github.com/tigerleeli/xiaohuge-blog/tree/master/spring-cloud-alibaba-sentinel

同步微信公眾號:小虎哥的技術(shù)博客

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容