私はちょうどnservicebusの調査を開始しましたが、私の特定の状況に対しては、それが適切であるか、おそらく過度のものであることがわかりません。私はちょっと苦労しています。は、このWCF MVCシナリオで役立つNServiceBusですか?
私はMVCウェブサイトとWCF RESTサービスを持っています。 "質問を投稿する"。これは、エンティティの格納、ルールエンジンによる検査、プッシュメッセージの送信、集約データの更新など、いくつかのアクションをトリガする必要があります。ルールエンジンの結果によって、新しいメッセージが作成されることもあります。これらの要件は将来変更される可能性があります。私は受信エンドポイントがリッスンしている人(誰かXが新しい質問を作成した人)にメッセージを送信する方法でこれを実装したいと思います。
私はdbテーブルにメッセージを格納し、モジュールでテーブルを監視することを考えていました。この思考プロセスはmsmqに移動し、次にnservicebusを使用してpub subに移動しました。しかし、私はこれをどのように実装すべきか分かりません。
現在、次のようなシナリオを考えています。 WCF RESTサービスに質問があります。 WCFサービスは質問を残し、新しい質問メッセージを発行します(nservicebusを何とかしておく必要がありますか?)。メッセージに登録されている私のモジュールは、通知を送信する、または定義されたルールに基づいてアクションをトリガーするなどのアクションを行います。
これは、nservicebusを使用するpubサブが私に利益をもたらすシナリオですか?そして、これは実際にそれを意図して行く方法でしょうか?
これはThanxです。私は実際にパブのサブサンプル(と他のすべて)を調べましたが、私はいくつかの問題を抱えていました。投稿とユーザーとのやりとりを受け取る外部のWCFサービスとMVCサイトがある場合、両方とも同じキューのパブリッシャとして機能することができます(同じサブスクライバをトリガーします)。 – Syg
これはおそらく設定することができますが、単一のサブスクライバに対して複数のパブリッシャを配置するのは間違いです。加入者の背後にあるアイデアは、あなたが単一の場所から来るビジネスイベントに興味があるということです。イベントのソースが2つある場合は、それらのイベントを受信するために別々にホストされたエンドポイントを用意する必要があります。これらのイベントを均質化して1つのソースとして公開します。 * Normalizer *のデザインパターンのようなものhttp://www.eaipatterns.com/Normalizer.html –
これはよくあるシナリオですね。私は電話で注文することも、オンラインで注文することもできます。私は、1つのソースからの公開がより良いデザインであることを理解することができます。もう1つの質問:質問オブジェクトを受け取った場合は、キュー(およびIMessage)を使用してこの問題を回避するか、IDを永続化して渡す方が良いでしょうか? – Syg