NServiceBus の最初の作成者として、私はおそらく自分自身のテクノロジに少し偏っていますが、できる限りバランスを保つように努めます。
輸送サポート
NServiceBus と MassTransit はどちらもRabbitMQとAzure Service Busをサポートしていますが、NServiceBus は以下もサポートしています。
RabbitMQ のトピックについて
NServiceBus が RabbitMQ をより強力にサポートしているという議論がなされる可能性があります。たとえば、Mass Transitは「プラグインはまだ実験的なものと見なされています。MassTransit によってサポートされていますが、プラグイン以上のものは保証できませんが、遅延配信機能で」それ自体を保証します。」
また、RabbitMQ チームと緊密に連携して、エコシステム全体の利益のために.net SDK に貢献しています。
Azure Service Bus に関しては
Azure Service Bus チームとのコラボレーションのレベルはさらに高く、.net コア SDK に対する 70 件以上の PR があります。
NServiceBus を使用すると、その知識を最大限に活用できます。
ツーリング
これが最大の違いです。
実質的なシステムを構築したら、さまざまな可動部品が互いにどのように通信するかを可視化することが非常に重要になります。MassTransit は、診断ソースを介して Application Insights や Open Trace などのサード パーティ ツールに小規模な統合を行う以外に、この分野で多くのことを行っていません。
NServiceBus 周辺のサービス プラットフォームはさらに進化しており、 ServiceInsightを使用してすべてのエンドポイントのシーケンス図を表示できます。

すべてのエンドポイントとメッセージの論理ビューを取得することもできます。

本質的に、システムのアーキテクチャの生きたドキュメントを取得します。
管理と監視
これは、MassTransit があまり持っていないもう 1 つの領域です。統合しているサードパーティ システムが利用できなくなり、システム内の大量のメッセージがエラー キューに格納された場合、MassTransit が持つ唯一の解決策は、後でRabbitMQ Shovel プラグインを使用してこれらのメッセージを手動で元に戻すことです。
NServiceBus に関するサービス プラットフォームには、エラー キューの監視、エラーの原因を確認するためのグラフィカル ツール、失敗したメッセージのグループを再生して実際に正常に処理されたことを確認する機能がすべてシンプルな Web アプリで含まれています。 ServicePulseと呼ばれます。

メッセージが失敗し始める前に問題の早期警告を提供できる、定期的に実行されるヘルスチェックの視覚化もあります。
そして最後に、プラットフォームで利用可能なパフォーマンス監視があります:

本番サポートに関しては、本当に完全なパッケージを利用できます。
長期サポートと下位互換性
Mass Transit の関係者は、 GitterやGoogle Groupで質問がある人を助けるのに非常に優れていますが、古いバージョンのバグ修正を提供しているとは思いません。運用システムが数年使用されていて、常にすべてをアップグレードすることはできない場合、それが重要になり始めます。
NServiceBus のサポートには次のものが含まれます。
- 各メジャー バージョンで 2 年以上
- さらに2年間の延長サポート
- 重大な問題に対する応答時間の保証
- 24 時間 365 日利用可能
コンサルティングとトレーニング
オフラインの観点から見ると、NServiceBus では世界中で公開コースを利用できます。また、プロジェクトを開始したり、問題が発生した場合に支援したりするために現場に出向くことができる多くのコンサルタントもいます。MassTransit から NServiceBus への切り替えを決めた企業がいくつかあると聞いたことがあります。必要なときにオンサイトの人員を確保できなかったからです。
ライセンス
NServiceBus についてまだ知らない人がいるとすれば、それは個人使用とスタートアップは無料だということです。

商用利用に関しては、幅広い顧客層が示すように、NServiceBus のライセンス モデルは非常に柔軟であり、管理者にとって十分に正当化できます。もちろん、MassTransit ではライセンスは無料です。
何らかの形で役立つことを願っています。