[發明專利]消息隊列的消費方法及裝置有效
| 申請號: | 201611219207.3 | 申請日: | 2016-12-26 |
| 公開(公告)號: | CN106789741B | 公開(公告)日: | 2020-02-18 |
| 發明(設計)人: | 鄧怡豪 | 申請(專利權)人: | 北京奇虎科技有限公司 |
| 主分類號: | H04L12/879 | 分類號: | H04L12/879 |
| 代理公司: | 北京市浩天知識產權代理事務所(普通合伙) 11276 | 代理人: | 宋菲;劉蘭蘭 |
| 地址: | 100088 北京市西城區新*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 消息 隊列 消費 方法 裝置 | ||
1.一種消息隊列的消費方法,包括:
當消費任務啟動時,建立與后臺數據庫之間的通信連接;
通過所述通信連接從所述后臺數據庫中獲取與所述消費任務對應的消息隊列的當前偏移信息;
若獲取成功,則根據獲取到的當前偏移信息讀取所述消息隊列中的消息數據;
每當從所述消息隊列中讀取一條消息數據后,根據該條消息數據對應的偏移地址在所述后臺數據庫中更新所述消息隊列的當前偏移信息;
其中,所述通過所述通信連接從所述后臺數據庫中獲取與所述消費任務對應的消息隊列的當前偏移信息的步驟之后,進一步包括:獲取所述消息隊列的有效數據范圍;
所述若獲取成功,則根據獲取到的當前偏移信息讀取所述消息隊列中的消息數據的步驟具體包括:
判斷所述獲取到的當前偏移信息是否在所述有效數據范圍內,若判斷結果為是,從所述當前偏移信息對應的位置逐條讀取所述消息隊列中的消息數據;若判斷結果為否,從所述有效數據范圍中的最舊數據對應的位置逐條讀取所述消息隊列中的消息數據。
2.根據權利要求1所述的方法,其中,所述根據該條消息數據對應的偏移地址在所述后臺數據庫中更新所述消息隊列的當前偏移信息的步驟具體包括:
創建用于更新偏移信息的事務,該事務包括:用于寫入該條消息數據對應的偏移地址的第一操作,以及用于寫入該條消息數據的數據內容的第二操作;
當該事務中包含的第一操作和第二操作都執行成功時,向所述后臺數據庫提交該事務。
3.根據權利要求2所述的方法,其中,當該事務中包含的第一操作和/或第二操作執行失敗時,回滾該事務,并重啟所述消費任務。
4.根據權利要求1所述的方法,其中,進一步包括:若獲取失敗,則從所述有效數據范圍中的最舊數據對應的位置逐條讀取所述消息隊列中的消息數據。
5.根據權利要求4所述的方法,其中,所述消息隊列包括多個消息分區,則所述消費任務對應的消息隊列的當前偏移信息具體為:所述消費任務對應的消息分區的當前偏移信息。
6.根據權利要求1-5任一所述的方法,其中,所述消息隊列為分布式消息隊列。
7.一種消息隊列的消費裝置,包括:
建立模塊,適于當消費任務啟動時,建立與后臺數據庫之間的通信連接;
獲取模塊,適于通過所述通信連接從所述后臺數據庫中獲取與所述消費任務對應的消息隊列的當前偏移信息;
讀取模塊,適于在獲取成功時,根據獲取到的當前偏移信息讀取所述消息隊列中的消息數據;
更新模塊,適于每當從所述消息隊列中讀取一條消息數據后,根據該條消息數據對應的偏移地址在所述后臺數據庫中更新所述消息隊列的當前偏移信息;
其中,所述裝置進一步包括:有效數據范圍獲取模塊,所述有效數據范圍獲取模塊適于獲取所述消息隊列的有效數據范圍;
所述讀取模塊適于判斷所述獲取到的當前偏移信息是否在所述有效數據范圍內,若判斷結果為是,從所述當前偏移信息對應的位置逐條讀取所述消息隊列中的消息數據;若判斷結果為否,從所述有效數據范圍中的最舊數據對應的位置逐條讀取所述消息隊列中的消息數據。
8.根據權利要求7所述的裝置,其中,所述更新模塊具體適于:創建用于更新偏移信息的事務,該事務包括:用于寫入該條消息數據對應的偏移地址的第一操作,以及用于寫入該條消息數據的數據內容的第二操作;
當該事務中包含的第一操作和第二操作都執行成功時,向所述后臺數據庫提交該事務。
9.根據權利要求8所述的裝置,其中,所述更新模塊進一步適于:當該事務中包含的第一操作和/或第二操作執行失敗時,回滾該事務,并重啟所述消費任務。
10.根據權利要求7所述的裝置,其中,所述讀取模塊進一步用于:在獲取當前偏移信息失敗時,從所述有效數據范圍中的最舊數據對應的位置逐條讀取所述消息隊列中的消息數據。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京奇虎科技有限公司,未經北京奇虎科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201611219207.3/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:醫用洞巾及其熱軋SM吸水墊
- 下一篇:一種滅菌網籃存放架





