消息端點設計相關模式

消息端點使用:

應用程序如何連接到消息傳遞通道以發送和接收消息?

 

使用消息端點將應用程序連接到消息傳遞通道,消息端點是消息傳遞系統的客戶端,應用程序可以使用該客戶端發送或接收消息。

 

競爭消費者

消息傳遞客戶端如何同時處理多個消息?

在單個渠道上創建多個競爭消費者,以便消費者可以同時處理多個消息。

使用MQ的點對點模式可以設置多個競爭消費者

 

消息網關

應用系統如何訪問消息系統

使用消息網關,封裝特定的方法調用並且暴露特定域的方法給應用系統。

消息調度程序

單個渠道上的多個消費者如何協調他們的消息處理?

在通道上創建消息調度程序,該消息調度程序將使用來自通道的消息並將它們分發給執行者。

消息映射器

如何在域對象和消息傳遞基礎結構之間移動數據,同時保持兩者相互獨立?

創建一個單獨的Messaging Mapper,其中包含消息傳遞基礎結構和域對象之間的映射邏輯。對象和基礎設施都不知道Messaging Mapper的存在。

選擇性消費者

消息使用者如何選擇希望接收哪些消息?

使消費者成爲選擇性消費者消費者通過其渠道傳遞的消息,以便它只接收符合其標準的消費者。

消息事務化客戶端

客戶端如何在與消息系統的交互中保障消息事務(即業務事務提交和消息被業務系統消費失敗後,仍可回滾消息的發送和消費狀態爲未發送和未消費)

使用事務客戶端 - 使用消息傳遞系統事務處理客戶端的會話,以便客戶端可以指定事務邊界。

發送方和接收方都可以是交易方式。對於發件人,在發送人提交事務之前,消息不會“真正”添加到頻道。使用接收器,在接收器提交事務之前,消息不會“真正”從通道中刪除。使用顯式事務的發送方可以與使用隱式事務的接收方一起使用,反之亦然。單個通道可能具有隱式和顯式事務發送器的組合; 它也可能有接收器的組合。

 

持久化訂閱者

如果用戶沒有收聽消息,他們如何避免丟失消息?

使用Durable Subscriber使郵件系統保存在訂戶斷開連接時發佈的郵件。

將未消費的訂閱消息保存,待訂閱者恢復重新發出。

 

輪詢消費者

怎樣實現應用想要按一定的速度消費消息

使用輪詢消費者可以實現按消費應用來決定消息被消費的速率。

 

Idempotent Receiver(冪等接收者)

消息接收者如何處理重複的消息?

將接收器設計爲Idempotent接收器 - 可以安全地多次接收相同的消息。

 

Event-Driven Consumer(事件驅動消費者)

應用程序如何在消息可用時自動使用消息?

應用程序應使用事件驅動的消費者,在消息傳遞時自動傳遞消息。

 

Service Activator(服務調用器)

應用程序如何設計通過各種消息傳遞技術和非消息傳遞技術調用服務?

設計Service Activator,將通道上的消息連接到正在訪問的服務。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章