2

私は現在、Appharbor アプリケーションに最適なメッセージ キュー ソリューションを見つけようとしています。見たもののほとんどは、MSMQ と DTC がインストールされた Windows 環境があることを前提としていますが、これは appharbor 環境が提供するとは思えません。

私たちが使用しているデータベースである ravendb とうまく連携するものが欲しいです。レイヴンだけに依存しているものは、特に既存の作業単位と統合する場合に理想的です。つまり、コントローラ アクションで save changes が呼び出されると、メッセージは同じトランザクションに保存されます。

また、バックグラウンド処理用のコンソール アプリケーションで動作するホストも必要です。

理想的には、開発環境でも「うまく機能する」ものが欲しいです。たとえばravenでは、開発中に組み込みモードを使用していますが、インストールを必要としないものが欲しいです。

nServicebus を見てきましたが、トランスポート (msmq、sql など) が必要であり、ドキュメントの多くが古くなっているため、これらの条件を満たしていないようです。

rhino Service Bus も調べましたが、ドキュメントとコミュニティが明らかに不足しています。また、完全にravendbに依存できるかどうかもわかりません。

私が調べた他のものはすべて非常に重く、開発環境で実行するにはインストールと構成が必要でした。

編集: 他のオプションは、独自のものを実装することです。

4

1 に答える 1

2

まず、StackOverflow で 1000 番目の NServiceBus の質問になったこと、おめでとうございます!

次に、ビジネス データの永続化に SQL を使用する場合、すべてのメッセージが (キューではなく) テーブルを通過する同じ SQL の上で NServiceBus を実行でき、DTC は必要ありません。

第 3 に、NServiceBus のトランスポートとして RavenDB を使用したい場合は、その上に ISendMessages および IReceiveMessages インターフェイスを実装する必要がありますが、コミュニティの誰かがすでにそれに取り組み始めていると思います。彼らと力を合わせます。

最後に、最近では独自の ESB を作成することはお勧めしません。既に多くの優れた選択肢がある場合はそうではありません。コミュニティとドキュメンテーションの問題について言及されましたが、これらは独自のインフラストラクチャを作成するときに最悪の場合に処理される傾向があります。

于 2013-04-25T10:47:50.570 に答える