[發明專利]一種基于ZK服務器的消息訂閱方法及裝置在審
| 申請號: | 202210368942.X | 申請日: | 2022-04-08 |
| 公開(公告)號: | CN114840353A | 公開(公告)日: | 2022-08-02 |
| 發明(設計)人: | 劉科浩;熊超 | 申請(專利權)人: | 云控智行科技有限公司 |
| 主分類號: | G06F9/54 | 分類號: | G06F9/54;H04L12/18;H04L67/54 |
| 代理公司: | 北京晉德允升知識產權代理有限公司 11623 | 代理人: | 王戈 |
| 地址: | 100176 北京市大興區北京經濟技*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 zk 服務器 消息 訂閱 方法 裝置 | ||
1.一種基于ZK服務器的消息訂閱方法,其特征在于,各消息發布端和各消息訂閱端分別在所述ZK服務器注冊消息發布節點和消息訂閱節點,所述方法包括:
對所述ZK服務器中各所述消息發布節點和各所述消息訂閱節點的動態進行監聽,以根據監聽結果,獲取實時的消息發布端列表和消息訂閱端列表;
獲取所述消息發布端列表實時對應的消息發布主題列表;
根據所述消息發布主題列表和所述消息訂閱端列表生成消息訂閱策略;
將所述消息訂閱策略廣播給各所述消息訂閱端,使得各所述消息訂閱端根據所述消息訂閱策略從MQTT服務器中訂閱所述消息主題列表中包含的待訂閱消息主題。
2.如權利要求1所述的方法,其特征在于,對所述ZK服務器中各所述消息發布節點和各所述消息訂閱節點的動態進行監聽,包括:
對各所述消息發布節點和各所述消息訂閱節點的上下線信息進行監聽,以獲取實時的消息發布端列表和消息訂閱端列表。
3.如權利要求2所述的方法,其特征在于,獲取所述消息發布端列表實時對應的消息發布主題列表,包括:
當監聽到新增上線的消息發布節點時,將對應新增的消息發布主題加入到所述消息發布主題列表中;
或者,當監聽到新增下線的消息發布節點時,將對應的消息發布主題從所述消息發布主題列表中刪除。
4.如權利要求3所述的方法,其特征在于,根據所述消息發布主題列表和所述消息訂閱端列表生成消息訂閱策略,包括:
當監聽到新增下線的消息發布節點時,從所述消息訂閱端列表中確定已訂閱所述新增下線的消息發布節點對應的消息發布主題的消息訂閱端;
根據所述確定的消息訂閱端和所述新增下線的消息發布節點對應的消息發布主題生成所述消息訂閱策略,使得所述確定的消息訂閱端取消訂閱所述新增下線的消息發布節點對應的消息發布主題,以釋放系統資源。
5.如權利要求1所述的方法,其特征在于,根據所述消息發布主題列表和所述消息訂閱端列表生成消息訂閱策略,包括:
根據所述消息發布主題列表中所包含的待訂閱消息主題的數量、和所述消息訂閱端列表中各所述消息訂閱端的負載信息生成所述消息訂閱策略。
6.如權利要求1所述的方法,其特征在于,根據所述消息發布主題列表和所述消息訂閱端列表生成消息訂閱策略,包括:
根據預設的選舉機制,從ZK服務器的各消息訂閱節點中選舉出消息訂閱主節點;
所述消息訂閱主節點根據所述消息發布主題列表和所述消息訂閱端列表,利用負載均衡算法生成所述消息訂閱策略,以將所述待訂閱消息主題均衡分配給各所述消息訂閱節點。
7.如權利要求6所述的方法,其特征在于,將所述消息訂閱策略廣播給各所述消息訂閱端,包括:
所述消息訂閱主節點將所述消息訂閱策略廣播給各所述消息訂閱端,使得各所述消息訂閱端根據所述消息訂閱策略從MQTT服務器中均衡訂閱各自需要訂閱的待訂閱消息主題。
8.如權利要求1所述的方法,其特征在于,根據所述消息發布主題列表和所述消息訂閱端列表生成消息訂閱策略,包括:
獲取所述消息發布主題列表中包括的待訂閱消息主題的特征信息;
根據所述特征信息從所述消息訂閱端列表中選擇需要訂閱所述待訂閱消息主題的消息訂閱節點;
根據選擇的所述消息訂閱節點和所述特征信息生成所述消息訂閱策略。
9.如權利要求8所述的方法,其特征在于,將所述消息訂閱策略廣播給各所述消息訂閱端,包括:
將所述消息訂閱策略廣播給選擇的所述消息訂閱節點對應的消息訂閱端,使得所述消息訂閱端根據所述消息訂閱策略從MQTT服務器中訂閱所述待訂閱消息主題。
10.一種基于ZK服務器的消息訂閱裝置,其特征在于,各消息發布端和各消息訂閱端分別在所述ZK服務器注冊消息發布節點和消息訂閱節點,所述裝置包括:
監聽模塊,對所述ZK服務器中各所述消息發布節點和各所述消息訂閱節點的動態進行監聽,以根據監聽結果,獲取實時的消息發布端列表和消息訂閱端列表;
獲取模塊,獲取所述消息發布端列表實時對應的消息發布主題列表;
策略生成模塊,根據所述消息發布主題列表和所述消息訂閱端列表生成消息訂閱策略;
廣播模塊,將所述消息訂閱策略廣播給各所述消息訂閱端,使得各所述消息訂閱端根據所述消息訂閱策略從MQTT服務器中訂閱所述消息主題列表中包含的待訂閱消息主題。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于云控智行科技有限公司,未經云控智行科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202210368942.X/1.html,轉載請聲明來源鉆瓜專利網。





