1. 程式人生 > >分散式事務學習-訊息傳送一致性分析(五)

分散式事務學習-訊息傳送一致性分析(五)

訊息傳送一致性

訊息傳送一致性:是指產生訊息的業務動作與訊息傳送的一致。(也就是說,如果業務操作成功,那麼由這個業務操作所產生的訊息一定要成功投遞出去,否則就丟訊息)

訊息傳送一致性的正向分析


訊息傳送一致性的異常情況分析




MQ佇列訊息的生產與消費常規流程



常規MQ佇列訊息的處理流程無法實現訊息傳送一致性,因此直接使用現成的MQ中介軟體產品無法實現可靠訊息最終一致性的分散式事務解決方案

訊息重複傳送問題

訊息重複傳送的原因


業務介面的冪等性設計
約束:被動方應用對於訊息的業務處理要實現冪等。

對於存在同一請求資料會發生重複呼叫的業務介面,介面的業務邏輯要實現冪等性設計。

訊息重發也得有次數限制,要不然就變成了死迴圈。
對於超過重發次限制的訊息,進入DLQ,等待人工干預或延後定期處理。