You are designing a Windows Azure application that will generate events for multiple clients.
Client web services might be behind NAT gateways.
You need to recommend an approach that will allow you to broadcast the events to clients.
What should you recommend?
A.
Use ADO.NET Data Services and provide a shared key to clients.
B.
Use Windows Azure Queues and provide a shared key to clients.
C.
Use Windows Azure Table storage and provide a shared key to clients.
D.
Use the Windows Azure AppFabric Service Bus and provide a shared secret to clients.
Explanation:
The Windows Azure Service Bus provides a hosted, secure, and widely available infrastructure for widespread communication, large-scale event distribution, naming, and service publishing. The Service Bus provides connectivity options for Windows Communication Foundation (WCF) and other service endpoints including REST endpoints — that would otherwise be difficult or impossible to reach. Endpoints can be located behind network address translation (NAT) boundaries, or bound to frequently-changing, dynamically-assigned IP addresses, or both.The Service Bus provides both relayed and brokered messaging capabilities. In the relayed messaging pattern, the relay service supports direct one-way messaging, request/response messaging, and peer-to-peer messaging. Brokered messaging provides durable, asynchronous messaging components such as Queues, Topics, and Subscriptions, with features that support publish-subscribe and temporal decoupling: senders and receivers do not have to be online at the same time; the messaging infrastructure reliably stores messages until the receiving party is ready to receive them.