パブリッシュ/サブスクライブ機能を備えた分散アーキテクチャ メッセージング システム/サービス バスが必要です。.net アプリケーションに使用できるフレームワークの推奨事項はありますか?
7 に答える
NServiceBusの人気が高まっています。オープンソースでもあります。これは、 Scott Hanselman が Udi Dahan と NServiceBus について話しているHanselminutesのエピソードです。それを使って必ず評価するべきです。
更新: NServiceBus ソリューションをゼロから構築する様子を示す DNR TV エピソードもあります: http://www.dnrtv.com/default.aspx?showNum=199
MasstransitとRhino Service Busもチェックしてください。オープンソースであり、非常に賢い人々によって書かれています。
RabbitMQをチェックしてください。.NET クライアントはフル機能を備えており、非常に使いやすいです。RabbitMQ in Actionという本と、アーリー アクセス エディションで利用できるRabbitMQ in Depthがあります。
私は現在、オープンソースのWCFベースのサービスバスに取り組んでいます。ここで見つけることができます:http://rockbus.codeplex.com/。動的(@run-time)サブスクリプション、サブスクリプションリポジトリ(データベース)、プラグ可能なトランスポート、XPathベースのコンテンツベースのルーティング、wcfプロトコルを介したトランザクション配信、ラウンドロビン配信、プラグ可能なサブスクリプション評価などをサポートします。見てください!
Apache NMSに統合されたActiveMQは、信じられないほど理解しやすく、セットアップが簡単で、透過的であることがわかりました。
たとえば、ActiveMQ には Web フロントエンドが付属しており、Web ブラウザーを使用してメッセージ キューを調べたり、メッセージを読み取ったり、削除したり、さらには作成したりできます。そのため、分散アプリケーションの片側のみの開発とテストを非常に簡単に開始でき、デバッグと監視は非常に簡単です。
Neuron ESBはまだ怒りのあまり使用していませんが、堅実な実装であることがわかりました。
これまでのところ、.NET スタックに成熟した Service Bus 実装はありません。マイクロソフトは現在開発中です。
http://msdn.microsoft.com/en-us/library/windowsazure/jj193022(v=azure.10).aspx
オプションとして、Java ワールドの 1 つを使用できます。たとえば、TIBCO - 利用可能なかなり堅牢な .NET クライアント、または OpenMQ があります。
幅広い機能を必要とせず、独自のシステムを開発する準備ができている場合は、WCF を使用してください。これには、WCF コールバックが適しています。