本申請涉及數據網絡,特別是涉及一種限流方法、裝置、設備及介質。
背景技術:
1、物聯網設備中通信過程通常是:終端設備作為消息的生產者將根據消息隊列遙測傳輸(message?queuing?telemetry?transport,mqtt)協議生成的mqtt消息發送到數據接收平臺的消息隊列中,消息的消費者按需讀取消息隊列里的數據,對數據完成清洗轉換后結束當前通信流轉。但是,當接入終端設備過多的情況下,如果終端設備出現異常頻繁發送消息時,會出現消息通信異常,并且對消費端造成過大的性能壓力。
2、然而,現有的消息隊列限流主要集中于服務端進行限制,特別在物聯網領域沒有針對終端生產消費能力進行限流的方式方法,這意味著即使終端設備出現異常,服務器仍然需要處理它們發送的消息,而無法對終端設備的異常行為進行有效控制,從而使得終端的穩定性較差。
技術實現思路
1、本申請提供的一種限流方法、裝置、設備及介質,能夠對終端設備進行限流,提高終端設備的穩定性。
2、第一方面,本申請實施例提供一種限流方法,方法包括:
3、獲取終端設備發送的消息請求,消息請求包括獲取消息請求,或存儲消息請求;
4、基于終端設備的設備類型以及終端設備的運行場景,確定與消息請求對應的目標限流策略,目標限流策略包括速率閾值;
5、在消息請求的請求速率大于速率閾值的情況下,拒絕處理消息請求,或對消息請求進行延遲處理;
6、在消息請求的請求速率小于或等于速率閾值的情況下,按照消息請求對應的預設規則處理消息請求。
7、第二方面,本申請提供一種限流裝置,該裝置包括:
8、獲取模塊,用于獲取終端設備發送的消息請求,消息請求包括獲取消息請求,或存儲消息請求;
9、確定模塊,用于基于終端設備的設備類型以及終端設備的運行場景,確定與消息請求對應的目標限流策略,目標限流策略包括速率閾值;
10、第一處理模塊,用于在消息請求的請求速率大于速率閾值的情況下,拒絕處理消息請求,或對消息請求進行延遲處理;
11、第二處理模塊,用于在消息請求的請求速率小于或等于速率閾值的情況下,按照消息請求對應的預設規則處理消息請求。
12、第三方面,本申請實施例提供了一種電子設備,該電子設備包括:處理器以及存儲有計算機程序指令的存儲器;
13、處理器執行計算機程序指令時實現如第一方面中任意一個實施例中的限流方法。
14、第四方面,本申請實施例提供了一種計算機存儲介質,計算機存儲介質上存儲有計算機程序指令,計算機程序指令被處理器執行時實現如第一方面中任意一個實施例中的限流方法。
15、第五方面,本申請實施例提供了一種計算機程序產品,計算機程序產品中的指令由電子設備的處理器執行時,使得電子設備執行實現如上述第一方面中任意一個實施例中的限流方法。
16、在本申請實施例提供的一種限流方法、裝置、設備及介質中,通過獲取終端設備發送的消息請求,消息請求包括獲取消息請求,或存儲消息請求;基于終端設備的設備類型以及終端設備的運行場景,確定與消息請求對應的目標限流策略,目標限流策略包括速率閾值;在消息請求的請求速率大于速率閾值的情況下,拒絕處理消息請求,或對消息請求進行延遲處理;在消息請求的請求速率小于或等于速率閾值的情況下,按照消息請求對應的預設規則處理消息請求。上述方式,通過監測終端設備發送的消息請求,可以根據設備類型和運行場景,確定適用于該設備的目標限流策略。這些策略基于速率閾值,可用于限制終端設備發送消息的速率。通過實施限流策略,可以主動控制終端設備的消息發送速率。當終端設備出現異常或非正常行為時,系統可以及時干預,避免其對整體通信系統造成不必要的干擾和性能壓力,有效控制終端設備的異常行為,從而提高了終端設備的穩定性和可靠性。
1.一種限流方法,其特征在于,所述方法包括:
2.根據權利要求1所述的方法,其特征在于,在獲取終端設備發送的消息請求之前,所述方法還包括:
3.根據權利要求2所述的方法,其特征在于,所述基于所述終端設備的設備類型以及所述終端設備的運行場景,確定與所述消息請求對應的目標限流策略,包括:
4.根據權利要求1所述的方法,其特征在于,所述消息請求為存儲消息請求;
5.根據權利要求1所述的方法,其特征在于,所述消息請求為獲取消息請求;
6.根據權利要求2所述的方法,其特征在于,在所述消息請求的請求速率大于所述速率閾值的情況下,拒絕處理所述消息請求,或對所述消息請求進行延遲處理之前,所述方法還包括:
7.根據權利要求6所述的方法,其特征在于,所述對于所述多個目標時間窗口,按照所述第一順序,依次判斷在目標時間窗口范圍內的請求次數是否大于目標時間窗口對應的最大請求次數,包括:
8.一種限流裝置,其特征在于,所述裝置包括:
9.一種電子設備,其特征在于,所述設備包括:處理器以及存儲有計算機程序指令的存儲器;
10.一種計算機可讀存儲介質,其特征在于,所述計算機可讀存儲介質上存儲有計算機程序指令,所述計算機程序指令被處理器執行時實現如權利要求1-7任意一項所述的限流方法。