[發明專利]隊列消息一致性的實現方法、裝置、設備及存儲介質有效
| 申請號: | 201711181692.4 | 申請日: | 2017-11-23 |
| 公開(公告)號: | CN108009027B | 公開(公告)日: | 2019-09-20 |
| 發明(設計)人: | 吳金霖 | 申請(專利權)人: | 北京百度網訊科技有限公司 |
| 主分類號: | G06F9/54 | 分類號: | G06F9/54 |
| 代理公司: | 北京鴻德海業知識產權代理事務所(普通合伙) 11412 | 代理人: | 袁媛 |
| 地址: | 100085 北京市*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 隊列 消息 一致性 實現 方法 裝置 設備 存儲 介質 | ||
1.一種隊列消息一致性的實現方法,其特征在于,包括:
消息發送方開啟數據庫事務及消息事務,并創建消息;
所述消息發送方進行數據庫事務及消息事務提交,提交成功,將所述消息發送給消息接收方,所述消息的頭部攜帶有所述消息的通用唯一識別碼UUID以及回復replyTo的隊列地址,以便所述消息接收方接收到所述消息后,開啟消息事務及數據庫事務,確定數據庫中是否已經保存有所述消息的UUID,若否,將所述消息的UUID保存到數據庫中,并在執行業務邏輯成功后分別提交數據庫事務及消息事務,提交成功,根據所述replyTo的隊列地址,向所述消息發送方返回針對所述消息的消費成功確認消息;若是,關閉數據庫事務及消息事務,并直接向所述消息發送方返回針對所述消息的消費成功確認消息。
2.根據權利要求1所述的方法,其特征在于,
該方法進一步包括:
所述消息發送方創建消息之后,執行保存消息到數據庫的操作,待數據庫事務提交成功后,將所述消息真正地保存到數據庫中;
所述消息發送方執行發送消息的操作,待消息事務提交成功后,將所述消息真正地發送給所述消息接收方。
3.根據權利要求2所述的方法,其特征在于,
該方法進一步包括:
所述消息發送方執行發送消息的操作之后,執行業務邏輯,執行成功,提交數據庫事務;
若在數據庫事務提交成功之前的操作出現異常,則所述消息發送方觸發消息事務回滾及數據庫事務回滾;
若在數據庫事務提交成功后,消息事務提交異常,則所述消息發送方觸發消息事務回滾。
4.根據權利要求3所述的方法,其特征在于,
該方法進一步包括:
所述消息發送方執行保存消息到數據庫的操作之后,將所述消息的狀態設置為已發送待確認RUNNING狀態;
若消息事務提交異常,則所述消息發送方將數據庫中保存的所述消息的狀態修改為未發送WAITING狀態;
若獲取到所述消息發送方返回的針對所述消息的消費成功確認消息,則所述消息發送方將數據庫中保存的所述消息的狀態修改為完成SUCCESS狀態;
對于處于WAITING狀態的消息,所述消息發送方通過定時輪詢進行發送;
對于處于RUNNING狀態的消息,所述消息發送方通過定時輪詢發現超過預定時長仍未獲取到消費成功確認消息,則進行消息的重新發送。
5.一種隊列消息一致性的實現方法,其特征在于,包括:
消息接收方接收消息發送方發送來的消息,所述消息為所述消息發送方數據庫事務及消息事務提交成功后發送來的消息,所述消息的頭部攜帶有所述消息的通用唯一識別碼UUID以及回復replyTo的隊列地址;
所述消息接收方開啟消息事務及數據庫事務,確定數據庫中是否已經保存有所述消息的UUID,若否,將所述消息的UUID保存到數據庫中,并執行業務邏輯,執行成功后分別提交數據庫事務及消息事務,提交成功,根據所述replyTo的隊列地址,向所述消息發送方返回針對所述消息的消費成功確認消息;若是,關閉數據庫事務及消息事務,并直接向所述消息發送方返回針對所述消息的消費成功確認消息。
6.根據權利要求5所述的方法,其特征在于,
所述消息接收方接收消息發送方發送來的消息包括:
所述消息接收方接收所述消息發送方通過消息中間件發送來的消息。
7.根據權利要求6所述的方法,其特征在于,
該方法進一步包括:
若在數據庫事務提交成功之前的操作出現異常,則所述消息接收方觸發數據庫事務回滾及消息事務回滾,并通知所述消息中間件重新發送所述消息;
若在數據庫事務提交成功后,消息事務提交異常,則所述消息接收方觸發消息事務回滾,并通知所述消息中間件重新發送所述消息。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京百度網訊科技有限公司,未經北京百度網訊科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201711181692.4/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種銀納米線微圖案化的制備方法
- 下一篇:一種蔬菜施肥方法





