[發明專利]一種消息發送方法、裝置、設備和計算機可讀存儲介質在審
| 申請號: | 202011551966.6 | 申請日: | 2020-12-24 |
| 公開(公告)號: | CN112559223A | 公開(公告)日: | 2021-03-26 |
| 發明(設計)人: | 宋鑫凱 | 申請(專利權)人: | 京東數字科技控股股份有限公司 |
| 主分類號: | G06F9/54 | 分類號: | G06F9/54;G06F9/50 |
| 代理公司: | 北京華夏泰和知識產權代理有限公司 11662 | 代理人: | 張麗穎 |
| 地址: | 100176 北京市大興區北京經*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 消息 發送 方法 裝置 設備 計算機 可讀 存儲 介質 | ||
本發明公開了一種消息發送方法、裝置、設備和計算機可讀存儲介質。該方法在主動方應用執行的步驟,包括:向消息中間件傳輸業務消息;接收消息中間件返回的消息存儲結果;在消息存儲結果為消息存儲成功時,執行下一步業務操作,并向消息中間件發送操作結果。該方法在消息中間件執行的步驟,包括:接收來自于主動方應用的業務消息;將業務消息存儲到消息隊列中;向主動方應用返回業務消息的消息存儲結果;接收主動方應用返回的操作結果,并在操作結果為操作成功時,將業務消息向被動方應用投遞。本發明在使用消息中間件進行消息傳輸的過程中,增加了反饋機制,避免了消息發送過程中各方的信息不對等,導致的各方信息不一致的問題。
技術領域
本發明涉及通信技術領域,尤其涉及一種消息發送方法、裝置、設備和計算機可讀存儲介質。
背景技術
目前,為了實現多個應用系統之間的解耦,應用系統與應用系統之間發消息多采用MQ(Message Queue,消息隊列)中間件來完成。具體而言,主動方應用(即發送消息的一方)將消息發送給MQ中間件,MQ中間件將該消息存儲到消息隊列中,需要該消息的被動方應用(即使用消息的一方)就可以從該消息隊列中消費該消息,無需主動方應用分別向需要該消息的被動方應用發送該消息。
但是,通過MQ中間件進行消息傳輸過程不存在反饋機制,例如:主動方應用是否成功發送消息,主動方應用針對該消息執行的操作是否成功,MQ中間件是否成功存儲消息,都不會進行任何反饋,使得主動方應用和被動方應用之間的信息一致性不能得到保障。
例如:用戶在物料領用系統領用所需的物料,物料領用系統生成物料領用消息,將物料領用消息發送給MQ中間件,并且針對該物料領用消息生成領用成功記錄;MQ中間件在消息隊列中存儲該物料領用消息,物料管理系統從消息隊列中獲取該物料領用消息,修改該物料的庫存數量;財務管理系統從消息隊列中獲取該物料領用消息,生成企業成本信息。在此過程中,如果物料領用系統未成功生成領用成功記錄,然而物料管理系統和財務管理系統已經進行相應操作,將導致物料領用系統、物料管理系統和財務管理系統的信息不一致。如果MQ中間件存儲失敗,那么物料管理系統和財務管理系統將不能進行相應操作,然而物料領用系統已經領用成功,同樣將導致物料領用系統、物料管理系統和財務管理系統的信息不一致。
發明內容
本發明實施例的主要目的在于提供一種消息發送方法、裝置、設備和計算機可讀存儲介質,以解決現有技術通過MQ中間件進行消息傳輸過程不存在反饋機制的問題。
針對上述技術問題,本發明實施例是通過以下技術方案來解決的:
本發明實施例還提供了一種消息發送方法,在主動方應用執行的步驟,包括:向消息中間件傳輸業務消息,以便所述消息中間件將所述業務消息存儲到消息隊列中;接收所述消息中間件返回的消息存儲結果;在所述消息存儲結果為消息存儲成功時,執行所述業務消息對應的下一步業務操作,并向所述消息中間件發送所述下一步業務操作的操作結果,以便所述消息中間件在所述操作結果為操作成功時,將所述業務消息投遞給被動方應用。
其中,所述向消息中間件傳輸業務消息,包括:向消息中間件傳輸消息狀態為第一狀態的所述業務消息,以便所述消息中間件在所述消息隊列中存儲所述業務消息,并且將所述業務消息的消息狀態設置為第一狀態;其中,所述第一狀態表示所述下一步業務操作的操作結果待確認;所述向所述消息中間件發送所述下一步業務操作的操作結果,包括:在所述下一步業務操作的操作結果為操作成功時,向所述消息中間件發送操作成功消息,以便所述消息中間件根據所述操作成功消息將所述業務消息的消息狀態從所述第一狀態調整為第二狀態;其中,所述第二狀態表示所述業務消息待發送。
其中,所述方法還包括:接收來自于所述消息中間件的消息查詢信息;其中,所述消息查詢信息用于查詢所述消息隊列中消息狀態為第一狀態的業務消息對應的操作結果;根據所述消息查詢信息,查詢所述消息隊列中消息狀態為第一狀態的業務消息對應的操作結果,并將所述消息隊列中消息狀態為第一狀態的業務消息對應的操作結果返回給所述消息中間件。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于京東數字科技控股股份有限公司,未經京東數字科技控股股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011551966.6/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種充裝站冷能利用裝置
- 下一篇:一種計算機中斷投遞的方法及裝置





