🎯 什麼情境該想到我
當你「有訊息無法被成功投遞或處理(重試多次仍失敗、過期、找不到目的地)」的時候:需要一個地方收容它,而不是無限卡在原通道。
⚙️ 怎麼用(步驟 / 公式)
意圖:當訊息系統無法投遞一則訊息時,把它移到專門的死信通道,而不是丟棄或阻塞。
做法 / 結構要點:
- 由訊息系統(而非應用邏輯)在投遞失敗、逾時、過期或重試上限時,把訊息轉入死信通道。
- 死信通道集中收容這些訊息,供監控、告警、人工或自動重處理。
- 保護正常通道不被投不出去的訊息塞住。
🧪 我實際套用的紀錄
- (待填)
⚠️ 注意 / 什麼時候不適用
- 與無效訊息通道分工:死信是「系統無法投遞/處理」,無效訊息是「接收端判定內容語意有問題」。
- 死信通道會堆積,需要監看與處理策略,否則問題只是被藏起來。
🔗 相關工具
- 無效訊息通道 Invalid Message Channel(對照:內容語意問題 vs 投遞失敗)
- 保證投遞 Guaranteed Delivery(搭配持久化,確保失敗訊息不會憑空消失)
- 點對點通道 Point-to-Point Channel(消費失敗的訊息常被送進死信通道)
- 企業整合模式