📌 30 秒摘要(Layer 3)
當多個系統要協作,最穩健的方式往往是非同步訊息傳遞。本書把「用訊息串接系統」這件事,整理成一套有名字的模式語言(65 個模式):訊息如何流動(通道 Channel)、如何被繞送(路由 Router)、如何被轉換(Translator)、如何進出系統(Endpoint)。這些模式是所有訊息佇列/事件驅動架構的共同詞彙,也是你先前 工具-Transactional-Outbox-Pattern、工具-MQ消費端防禦三原則 的理論母體。
🗺 心智圖(Canvas)
企業整合模式
Link to original
🧰 這本書給我的工具
- 工具-訊息傳遞整合模式 — 用訊息佇列串接多個系統時(即用快速工具)
📖 完整型錄:65 個整合模式(詳解在 reference/)
每個模式一張參考卡,依八大家族分類。
① 整合風格 Integration Styles
② 訊息系統(根模式)Messaging Systems
- 訊息通道 Message Channel、訊息 Message、管道與過濾器 Pipes and Filters、訊息路由器 Message Router、訊息轉換器 Message Translator、訊息端點 Message Endpoint
③ 訊息通道 Messaging Channels
- 點對點通道 Point-to-Point Channel、發布訂閱通道 Publish-Subscribe Channel、資料型別通道 Datatype Channel、無效訊息通道 Invalid Message Channel、死信通道 Dead Letter Channel、保證投遞 Guaranteed Delivery、通道配接器 Channel Adapter、訊息橋接 Messaging Bridge、訊息匯流排 Message Bus
④ 訊息建構 Message Construction
- 命令訊息 Command Message、文件訊息 Document Message、事件訊息 Event Message、請求-回覆 Request-Reply、回覆位址 Return Address、關聯識別碼 Correlation Identifier、訊息序列 Message Sequence、訊息過期 Message Expiration、格式指示器 Format Indicator
⑤ 訊息路由 Message Routing
- 內容路由器 Content-Based Router、訊息過濾器 Message Filter、動態路由器 Dynamic Router、收件人清單 Recipient List、分割器 Splitter、聚合器 Aggregator、重排序器 Resequencer、組合訊息處理器 Composed Message Processor、散發-聚集 Scatter-Gather、路由單 Routing Slip、流程管理器 Process Manager、訊息代理器 Message Broker
⑥ 訊息轉換 Message Transformation
- 信封包裝器 Envelope Wrapper、內容擴充器 Content Enricher、內容過濾器 Content Filter、寄物單 Claim Check、正規化器 Normalizer、標準資料模型 Canonical Data Model
⑦ 訊息端點 Messaging Endpoints
- 訊息閘道 Messaging Gateway、訊息對應器 Messaging Mapper、交易式用戶端 Transactional Client、輪詢式消費者 Polling Consumer、事件驅動消費者 Event-Driven Consumer、競爭消費者 Competing Consumers、訊息分派器 Message Dispatcher、選擇性消費者 Selective Consumer、持久訂閱者 Durable Subscriber、冪等接收者 Idempotent Receiver、服務啟動器 Service Activator
⑧ 系統管理 System Management
- 控制匯流排 Control Bus、繞道 Detour、竊聽器 Wire Tap、訊息歷史 Message History、訊息存放區 Message Store、智慧代理 Smart Proxy、測試訊息 Test Message、通道清除器 Channel Purger
✨ 關鍵重點(Layer 1–2)
- 為何用訊息:非同步、解耦、可靠、能削峰——比直接同步呼叫更能容忍故障與差異。
- 四類核心模式:訊息通道(Channel)、訊息路由(Router/Filter/Splitter/Aggregator)、訊息轉換(Translator/Enricher)、訊息端點(Endpoint,含冪等消費者)。
- 可靠傳遞:保證投遞、冪等消費、死信佇列——處理「訊息一定會重複/失敗」的現實。
- 這套模式是 Kafka/RabbitMQ/事件驅動架構的通用語言。
💬 金句原文(Layer 0)
- 「整合系統最可靠的方式,往往是讓它們透過訊息非同步溝通。」
🔗 相關
- 工具-Transactional-Outbox-Pattern —— 型錄之外的實戰補充,訊息與資料庫狀態如何不脫節
- 工具-MQ消費端防禦三原則 —— 型錄之外的實戰補充,消費端的冪等與重試怎麼寫
- 工具-分散式事務的取捨 —— 上位決策,先決定走不走最終一致,再挑本書的哪些模式