[發明專利]消息隊列的擁塞控制方法和裝置有效
| 申請號: | 201510770687.1 | 申請日: | 2015-11-12 |
| 公開(公告)號: | CN106708607B | 公開(公告)日: | 2020-12-22 |
| 發明(設計)人: | 戴瀟桐 | 申請(專利權)人: | 創新先進技術有限公司 |
| 主分類號: | G06F9/48 | 分類號: | G06F9/48 |
| 代理公司: | 北京國昊天誠知識產權代理有限公司 11315 | 代理人: | 黃熊;李永強 |
| 地址: | 英屬開曼群島大開曼*** | 國省代碼: | 暫無信息 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 消息 隊列 擁塞 控制 方法 裝置 | ||
本申請實施例公開一種消息隊列的擁塞控制方法和裝置,在接收待發送消息的目標消息隊列發生擁塞時,不會主動丟棄該待發送消息,而是將該待發送消息轉移至優先級低的其他消息隊列,通過占用優先級低的消息隊列來保證待發送消息的傳輸,實現對目標消息隊列擁塞進行控制的同時,還能夠保證待發送消息的傳輸率。
技術領域
本申請涉及消息傳輸技術領域,特別涉及一種消息隊列的擁塞控制方法和裝置。
背景技術
隨著互聯網時代的到來,通過消息隊列來傳輸的消息越來越多,消息隊列發生擁塞的概率也不斷增加。
現有技術中,一般通過丟尾方式來控制消息隊列的擁塞,其包括如下步驟:
S1、在待發送消息存至消息隊列時,獲取該消息隊列的長度;
S2、判斷該消息隊列的長度是否大于閾值,若是,確定該消息隊列發生擁塞,進而執行步驟S3;
S3、將前述存至消息隊列內的待發送消息丟棄,以降低消息隊列中消息數量,實現減輕該消息隊列的擁塞。
在實現本申請過程中,發明人發現現有技術中至少存在如下問題:
由于丟尾算法僅依靠丟棄隊列尾部的消息來減輕該消息隊列的擁塞,那么可能存在某一段時間集中進入消息隊列的都是較為優先級較高的重要消息,若發生擁塞,這些優先級較高的重要消息容易被大量丟棄,導致消息傳輸率降低。
發明內容
本申請實施例的目的是提供一種消息隊列的擁塞控制方法和裝置,能在控制消息隊列的擁塞時保證消息的傳輸率。
為解決上述技術問題,本申請實施例提供一種消息隊列的擁塞控制方法是這樣實現的:
判斷用于接收待發送消息的目標消息隊列是否發生擁塞,所述目標消息隊列位于包括若干具有優先級的消息隊列的隊列系統內;
在所述目標消息隊列發生擁塞時,在所述隊列系統內確定一個比所述目標消息隊列的優先級低的消息隊列,將所述待發送消息存至所述比目標消息隊列的優先級低的消息隊列;
在所述目標消息隊列未發生擁塞時,將所述待發送消息存至所述目標消息隊列。
為解決上述技術問題,本申請實施例提供一種消息隊列的擁塞控制裝置是這樣實現的:
擁塞判斷模塊,用于判斷用于接收待發送消息的目標消息隊列是否發生擁塞,所述目標消息隊列位于包括若干具有優先級的消息隊列的隊列系統內;
控制執行模塊,用于:在所述目標消息隊列發生擁塞時,在所述隊列系統內確定一個比所述目標消息隊列的優先級低的消息隊列,將所述待發送消息存至所述比目標消息隊列的優先級低的消息隊列;在所述目標消息隊列未發生擁塞時,將所述待發送消息存至所述目標消息隊列。
由以上本申請實施例提供的技術方案可見,本申請實施例所提供的消息隊列的擁塞控制方法和裝置,在接收待發送消息的目標消息隊列發生擁塞時,不會主動丟棄該待發送消息,而是將該待發送消息轉移至優先級低的其他消息隊列,通過占用優先級更低的消息隊列來保證待發送消息的傳輸,實現對目標消息隊列擁塞進行控制的同時,還能夠保證待發送消息的傳輸率。
附圖說明
為了更清楚地說明本申請實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本申請中記載的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動性的前提下,還可以根據這些附圖獲得其他的附圖。
圖1為本申請實施例中消息隊列的擁塞控制方法適用的消息傳輸系統的架構示意圖。
圖2為本申請第一實施例中消息隊列的擁塞控制方法的過程;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于創新先進技術有限公司,未經創新先進技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201510770687.1/2.html,轉載請聲明來源鉆瓜專利網。





