以前は、Web アプリケーションで CRUD 操作 (またはその他のタスク) が (UI から) 行われたときに、WCF を使用して次のような単純なパターンを使用していました。
GetUserByIDResponse response = new UserServiceClientProxy().GetByID(new GetUserByIDRequest() { UserID = UserID });
if (response.success) {
//response.data - Do something!
} else {
//Show error response.message
}
ただし、私の調査によると、Azure プラットフォームから実行することを意図してデプロイし、クラウド サービスモデルを使用する場合、最善のアプローチは、このサービス バスの概念を次のようなコードで使用することです。
QueueClient requestClient = CreateQueueClient("RequestQueueName");
QueueClient responseClient = CreateQueueClient("ResponseQueueName");
MessageSession receiver = responseClient.AcceptMessageSession(ReplyToSessionId);
//blah blah
通信するとき、すべてのサービス タイプ操作がサービス バスを介して処理されるようになったという私の仮定は正しいですか? それとも、アプリケーションの特定の側面でこの手法を使用することだけを検討しますか?
「サービス バスは、Azure プラットフォーム用に設計された SOA (サービス指向アーキテクチャ) の一般的な代替品ですか?」
うまくいけば、それは理にかなっています。