SpringCloudsentinel如何實(shí)現(xiàn)接口限流的方法-創(chuàng)新互聯(lián)

這篇文章給大家分享的是有關(guān)SpringCloud sentinel如何實(shí)現(xiàn)接口限流的方法的內(nèi)容。小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考。一起跟隨小編過來看看吧。

創(chuàng)新互聯(lián)建站"三網(wǎng)合一"的企業(yè)建站思路。企業(yè)可建設(shè)擁有電腦版、微信版、手機(jī)版的企業(yè)網(wǎng)站。實(shí)現(xiàn)跨屏營銷,產(chǎn)品發(fā)布一步更新,電腦網(wǎng)絡(luò)+移動(dòng)網(wǎng)絡(luò)一網(wǎng)打盡,滿足企業(yè)的營銷需求!創(chuàng)新互聯(lián)建站具備承接各種類型的做網(wǎng)站、網(wǎng)站建設(shè)項(xiàng)目的能力。經(jīng)過10年的努力的開拓,為不同行業(yè)的企事業(yè)單位提供了優(yōu)質(zhì)的服務(wù),并獲得了客戶的一致好評(píng)。

Sentinel是什么

Sentinel的官方標(biāo)題是:分布式系統(tǒng)的流量防衛(wèi)兵。從名字上來看,很容易就能猜到它是用來作服務(wù)穩(wěn)定性保障的。對(duì)于服務(wù)穩(wěn)定性保障組件,如果熟悉Spring Cloud的用戶,第一反應(yīng)應(yīng)該就是Hystrix。但是比較可惜的是Netflix已經(jīng)宣布對(duì)Hystrix停止更新。那么,在未來我們還有什么更好的選擇呢?除了Spring Cloud官方推薦的resilience4j之外,目前Spring Cloud Alibaba下整合的Sentinel也是用戶可以重點(diǎn)考察和選型的目標(biāo)。

Sentinel的功能和細(xì)節(jié)比較多,一篇內(nèi)容很難介紹完整。所以下面我會(huì)分多篇來一一介紹Sentinel的重要功能。本文就先從限流入手,說說如何把Sentinel整合到Spring Cloud應(yīng)用中,以及如何使用Sentinel Dashboard來配置限流規(guī)則。通過這個(gè)簡單的例子,先將這一套基礎(chǔ)配置搭建起來。

1.啟動(dòng)Sentinel Dashboard

下載地址:sentinel

啟動(dòng)方式:java -Dserver.port=8888 -jar sentinel-dashboard-1.6.0.jar

可以通過-Dserver.port=8888來切換啟動(dòng)的端口,-Dserver.servlet.session.timeout=7200: 用于指定 Spring Boot 服務(wù)端 session 的過期時(shí)間,如 7200 表示 7200 秒;60m 表示 60 分鐘,默認(rèn)為 30 分鐘;


這里我碰到一個(gè)問題:使用最新的sentinel Dashboard 1.7.1.jar會(huì)出現(xiàn)問題

Sentinel Dashboard界面新增流控規(guī)則時(shí)報(bào)錯(cuò):失敗:invalid type

主要問題是Sentinel Dashboard的jar包版本過高,導(dǎo)致代碼里的sentinel-code版本與dashboard的版本不一致,最終報(bào)錯(cuò)。

github上的issue:https://github.com/alibaba/Sentinel/issues/1236#issuecomment-571907232


啟動(dòng)后輸入賬號(hào)密碼,全部為sentinel,進(jìn)入主頁面

SpringCloud sentinel如何實(shí)現(xiàn)接口限流的方法

 到此sentinel dashboard的啟動(dòng)就完成了,接下來啟動(dòng)項(xiàng)目

pom中加入

      com.alibaba.cloudspring-cloud-starter-alibaba-sentinel2.1.1.RELEASE

在配置文件中加入相關(guān)配置

spring 
  cloud:
    sentinel:
      transport:
        dashboard: localhost:8080

在項(xiàng)目中寫一個(gè)簡單接口

 @GetMapping("/unLock")
 public String lock() throws Exception {
     return "success";
 }

啟動(dòng)項(xiàng)目就可以了,在dashboard查看前,先調(diào)用接口幾次,不然dashboard上可能看不到,這里我用jmeter請求了500次

SpringCloud sentinel如何實(shí)現(xiàn)接口限流的方法

接下來測試限流的作用,點(diǎn)擊簇點(diǎn)鏈路,選擇要限流的接口,點(diǎn)擊流控

SpringCloud sentinel如何實(shí)現(xiàn)接口限流的方法

使用jmeter發(fā)起500次請求

SpringCloud sentinel如何實(shí)現(xiàn)接口限流的方法

限流生效

感謝各位的閱讀!關(guān)于SpringCloud sentinel如何實(shí)現(xiàn)接口限流的方法就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí)。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!

網(wǎng)頁題目:SpringCloudsentinel如何實(shí)現(xiàn)接口限流的方法-創(chuàng)新互聯(lián)
新聞來源:http://muchs.cn/article36/djhipg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供域名注冊、建站公司面包屑導(dǎo)航、網(wǎng)站改版、服務(wù)器托管、品牌網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)