Dot-Net

NServiceBus 與 MassTransit

  • November 30, 2012

我正在為有關 NServiceBus 和 MassTransit 的優缺點列表而苦苦掙扎。

現在我知道這裡已經有一個執行緒,但它並沒有真正回答我的問題。

這是我到目前為止所讀到的:

  1. NServiceBus,是的,它已獲得許可,而且不是免費提供的。
  2. MassTransit,是的,它是開源的,但文件似乎有些欠缺。

NServiceBus 較舊,並且有更多參考。很難找到有關 MassTransit 的資訊,但我很開放。但是我必須提供一個可靠的解決方案,所以我不得不問。

所以,請有這兩個框架經驗的人。我為什麼要選擇 NServiceBus?或者 我為什麼要選擇 MassTransit?

是性能、安全性、規模還是?

如果我必須總結一下,這就是我要說的:

如果您需要商業支持,請選擇 NServiceBus。如果您對使用論壇作為支持手段感到滿意,MassTransit 是一個不錯的選擇。到目前為止,開發人員對我們的問題非常敏感。如果您選擇 MassTransit,現在您將在 MSMQ 和 RabbitMQ 之間進行選擇。如果您需要 DTC,請使用 MSMQ。如果您想要更多功能和更好的管理,請使用 RabbitMQ。

在我們的項目中,我們從 NServiceBus 切換到 MassTransit 有兩個原因:

  1. 大眾運輸是免費的
  2. 我們喜歡 RabbitMQ

這兩個框架我都用過。我使用 MassTransit 的時間比使用 NServiceBus 的時間長。這是我看到的亮點。

成本:

  • MassTransit 獲得 Apache 2.0 許可,可免費用於商業生產用途,而 NServiceBus 則不是。

支持:

  • 正如 Udi 提到的,有一個商業 NServiceBus 支持選項,我還沒有看到 MassTransit 支持。

運輸:

  • MassTransit 支持 MSMQ 和 RabbitMQ
  • NServiceBus 僅支持 MSMQ RabbitMQ 在 NServiceBus 4+ 中被支持

RabbitMQ 與 MSMQ:

  • MSMQ 支持 DTC(分佈式事務協調器),用於涉及潛在多台機器(例如 SQL 伺服器、Windows 服務)上的多個程序的事務
  • RabbitMQ 具有出色的管理界面
  • MSMQ 存在的時間更長,是 Microsoft 的產品
  • RabbitMQ 是較新的、開源的、免費的,由 VMWare 贊助
  • MSMQ 預設安裝在大多數 Windows 機器上

Udi Dahan 和 MassTransit 的人(Chris Patterson、Dru Sellers 和 Travis Smith)都是才華橫溢的人。

引用自:https://stackoverflow.com/questions/13647423