[發明專利]一種消息隊列橋接增強的方法有效
| 申請號: | 202110287454.1 | 申請日: | 2021-03-17 |
| 公開(公告)號: | CN113051087B | 公開(公告)日: | 2023-10-03 |
| 發明(設計)人: | 施火炎;王鵬;黃惠杰;游曉娟 | 申請(專利權)人: | 廈門立林科技有限公司 |
| 主分類號: | G06F9/54 | 分類號: | G06F9/54 |
| 代理公司: | 廈門致群財富專利代理事務所(普通合伙) 35224 | 代理人: | 劉兆慶 |
| 地址: | 361000 福建省廈門*** | 國省代碼: | 福建;35 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 消息 隊列 增強 方法 | ||
本發明公開了一種消息隊列橋接增強的方法,包括如下步驟:設備的排序:定義設備得分和優先級得分,并分別作為任務設備列表和優先級設備列表的排序依據;消息的排序:定義消息得分,作為消息列表的排序依據;消息的過濾:根據新消息對具有相同消息屬性的堆積消息進行覆蓋并更新;消息的清理:根據刪除指令清除消息隊列中滿足條件的消息;消息的送達:接收來自設備的確認字符,確認消息送達。本發明提供了設備得分與優先級得分的計算方法,并作為排序依據,提高消息發送的精準度;利用消息屬性和刪除指令對消息進行過濾和清理,減少大量重復無用的消息,提高用戶體驗、減少寬帶浪費;利用設備的確認字符,保證消息的送達。
技術領域
本發明涉及計算機技術領域,特別涉及一種消息隊列橋接增強的方法。
背景技術
在物聯網中,當我們給設備發送消息,消息首先會經過消息隊列(如:RabbitMQ),通過橋接,將消息轉發至另一個消息隊列(如:EMQ),進而投遞給設備(如圖1所示)。在現有的物聯網環境下,由于延遲發送、網絡環境差、設備斷網、設備本身消費消息慢、消息隊列的特性等原因,會存在消息堆積的情況,而隨著時間的推移,將出現:1、優先級高的設備可能是最后才收到消息;2、產生大量無用的信息;3、信息丟失。這些都導致了消息傳送的精準度不夠。
發明內容
為解決上述問題,本發明提供了一種消息隊列橋接增強的方法,以提高消息傳送的精準度。
本發明采用以下技術方案:
一種消息隊列橋接增強的方法,包括如下步驟:
設備的排序:定義設備得分和優先級得分,并分別作為任務設備列表和優先級設備列表的排序依據;
消息的排序:定義消息得分,作為消息列表的排序依據;
消息的過濾:根據新消息對具有相同消息屬性的堆積消息進行覆蓋并更新;
消息的清理:根據刪除指令清除消息隊列中滿足條件的消息;
消息的送達:接收來自設備的確認字符,確認消息送達。
進一步地,所述任務設備列表為云端存有待發送消息的設備列表,所述優先級設備列表是從所述任務設備列表同步得到,同步長度即為支持同時發送的設備的限制數。
進一步地,所述設備得分score的影響因子包括設備角色S1、待發送消息數S2、消息優先級總S3和和歷史成功率suc,所述設備得分score的計算為:score=(S1+S2+S3)×suc。
進一步地,所述優先級得分即為設備從所述任務設備列表同步到所述優先級設備列表時的同步時間,若消息發送給設備且設備應答,則將優先級得分更新為應答時間。
進一步地,所述設備角色S1為固定值,所述設備角色S1的計算為:S1=(n1÷n2)×50%,其中,n1為當前設備的設備角色的分值,n2為設備角色的最大分值,50%為所述設備角色的權重。
進一步地,所述待發送消息數S2的計算為:S2=(m÷M)×15%,其中,m為當前設備堆積的消息數,M為所有堆積消息總數,15%為所述待發送消息數的權重。
進一步地,所述消息優先級總和S3的計算為:S3=(p÷P)×35%,其中,p為當前設備所有消息的優先級總和,P為所有堆積消息的優先級總和,35%為所述消息優先級總和的權重。
進一步地,所述歷史成功率suc的計算為:suc=f÷F,其中,f為成功次數,F為請求總數,且F>5。
進一步地,所述消息屬性由設備地址、業務類型和業務ID組成。
進一步地,所述消息的清理具體為:接收刪除指令并立即緩存到分布式緩存中間件中,
對于已入庫的消息,若滿足刪除條件則刪除消息;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于廈門立林科技有限公司,未經廈門立林科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110287454.1/2.html,轉載請聲明來源鉆瓜專利網。





