BB38
Oct 29th, 2008
Microsoft .NET Service Bus: Connectivity, Messaging, Events, and Discovery
Called in the schedule “.NET Services: Connectivity, Messaging, Events, and Discovery with the Service Bus”

Speakers

Clemens Vasters, Service Bus Technical Lead, Microsoft, ,
Over half of all Internet traffic requires bidirectional connectivity. But all solutions available today are brittle, difficult to use, and insecure. Internet scale connectivity requires an Internet scale DMZ. The Azure .net Service Bus is that DMZ in the sky. This 400-level deep dive demonstrated several binding options for connecting to the .net Service Bus.
The naming system used by the .net Service Bus was also discussed. In the CTP, Azure uses the scheme //servicebus.windows.net/service/ solution/yourservicename, but post the CTP, Azure will migrate to the scheme //servicebus.windows.net/yourname which will support a hierarchy (subdirectories under yourname) and won’t have to conform so tightly to service names. / Mentioned Technologies
  • Federated Identity
  • WS*
  • WCF
  • SSL
  • REST
  • HTTP
  • SOAP
  • JavaScript

List of demos

Service Registry / Start a set of listening services that self-publish. Public endpoints are published in the Service Registry. That registration has a short life span in the CTP to discourage spamming. (You re-register multiple times to keep service in the Registry.) / Approximately 15 min. into session
One-way Relay Binding / The most fundamental binding. Opens an outbound bidirectional socket to the cloud / Approximately 30 min. into session
Event Relay Binding / Topic-based pub/sub allowing two receivers. Clemens was going to demonstrate a multi-cast chat session but he forgot to set his authentication configuration. Doing so in front of the audience would have allowed others to see his password, so he decided to cancel this demo. / Immediately following previous demo
Net TCP Relay Binding / The recommended binding with the highest throughput. Sender sends messages to an endpoint. The messages hit a socket-socket forwarder which establishes a socket connection to the receiver and forwards the message. Clemens showed code here rather than demonstrating results. He said, “It’s awfully hard to demonstrate TCP/IP.” / Immediately following previous demo
Net TCP Hybrid Binding / NetTcpRelayBindingHybrid is also referred to as direct mode. Creates a direct socket between sender and receiver even though they are behind firewalls. Sender and receiver send probing messages. The relay examines these messages and uses a predictive algorithm to determine what port should be available to establish a direct connection. The direct socket upgrades performance. If no direct socket becomes available, sender and receiver still communicate over the relay. / Immediately following previous demo
WS* and REST / This WebHttpRelayBinding was what Don Box demonstrated in his keynote. This solution handles interoperability, but it doesn’t scale well. It uses more memory and has a higher latency than TCP binding. Clemens demonstrated a service that finds media on his hard drive, launches a media player, and plays the Gates/Seinfeld commercial. / Immediately following previous demo

Conclusion

The Azure service bus provides pervasive secure connectivity for services in the cloud. It can be thought of as the “DMZ in the sky.” The service bus uses a WCF-programming model.
In the Azure CTP, customers are limited to 10 concurrent listeners.