Amazon (AWS) クラウドで新しい ASP MVC 注文アプリケーションを作成し、ローカル データセンターで永続化レイヤーを使用しています。CQRS パターンを使用します。プロジェクトの目標は、キューを使用して書き込み (コマンド/イベント) を保存および転送し、ローカル データセンターで非同期に取得および処理できる高可用性です。その後、WAN またはローカル データセンターに障害が発生した場合でも、クラウド MVC アプリは注文を受け取り、処理が再開されるまでキューに入れることができます。
私が最初に考えたのは、キューイングに AWS SQS を使用し、独自の c# アプリケーションで独自のキュー コンシューマー/ディスパッチャー/ハンドラーを作成して、着信メッセージ/イベントを処理することでした。
MVC (@Amazon) --> Event/POCO --> SQS --> QueueReader (@my datacenter) --> DB
次に、NServiceBus を見つけました。NSB は、メッセージの処理、再試行、エラーの処理など、多くの詳細を非常にうまく処理しているようです。
しかし、さらに調査すると、NServiceBus が物理的に分離された環境 (クラウドからデータセンターへ) で WAN 経由で使用されることを意図しているようには見えません。Google と SO は、私が必要とするように WAN を介して NServiceBus を使用することについて、あまり良いイメージを持っていません。
これはできますか?
MVC (@ Amazon) --> イベント/POCO --> NServiceBus over WAN --> NServiceBus Handler(s) --> DB
WAN で NServiceBus を使用するにはどうすればよいですか? または、Amazon とローカル データセンター間のキューイングとメッセージ処理を処理するためのより良いソリューションはありますか?