Apache.NMS.AMQP
概述
此專案的目標是將 .NET 訊息服務 API (NMS) 與 進階訊息佇列協定 (AMQP) 1.0 標準線路協定結合。歷史上,Apache 社群創建了 NMS API,為各種訊息系統提供廠商獨立的 .NET 介面。
NMS API 讓您能彈性地使用 C#、VB 或任何其他 .NET 語言撰寫 .NET 應用程式,同時使用單一 API 連接到任意數量的訊息提供者。進階訊息佇列協定 (AMQP) 是一種開放且標準化的網路協定,用於在應用程式或組織之間可靠地傳遞訊息。
在 AMQP 成為標準之前,組織使用專有的線路協定來連接其系統,這導致了廠商鎖定以及與外部組織整合時的整合問題。
實現廠商獨立性和技術大規模採用的關鍵是將開放原始碼 API 和標準線路協定結合在一起,這正是此專案的宗旨。以下說明 NMS 內的 AMQP 1.0 支援如何幫助 .NET 社群
- 更多選擇:隨著越來越多的訊息代理和服務實作 AMQP 1.0 標準線路,.NET 開發人員和架構師將有更多訊息技術的選擇。
- 無遷移風險:由於 AMQP 1.0 是線路標準,您不會遇到在實作之間切換時過去發生的問題。
- 創新:競爭是技術創新的關鍵要素。具有無縫可插拔性的直接競爭訊息實作,迫使廠商進行創新和差異化。
下載
請參閱此處以取得下載
組態
請參閱此處以取得組態詳細資訊
貢獻
如果您是不希望被訊息實作鎖定的 .NET 開發人員,請參與此專案。在這裡您會找到開放原始碼程式碼庫,並請提供評論和做出您自己的增強功能。
從 git 取得原始碼 https://github.com/apache/activemq-nms-amqp
整體架構
Apache-NMS-AMQP 應將熟悉的 NMS 概念橋接到 amqp-bindmap-jms-v1.0-wd09.pdf 文件中所述的 AMQP 協定概念。因此,一般來說,大多數實作 Apache.NMS 介面的頂層類別,Connection、Session、MessageProducer 等,會建立、管理和銷毀 amqpnetlite 相等的物件,Connection、Session、Link 等。
AMQP1.0 協定引擎 AmqpNetLite
Apache-NMS-AMQP 使用 AmqpNetLite 作為基礎的 AMQP 1.0 傳輸協定引擎。