Windows Azure Service Bus Application Patterns

Sign in to queue

Description

Service bus is a very capable service provided by Windows Azure. In this episode we'll explore some of the application scenarios of two major service bus offerings – relay and messaging. We'll examine different characteristics of the two services in terms of differences in payloads, topologies, scaling patterns, and many other aspects. The following table is taken from the table we built during the session. We hope this episode can provide you some guidance and ideas when designing your own applications.

 

Relay

Queues/Topics

Architecture   

Coupled

Decoupled

Main value   

Connectivity/location   separation

loosely-coupled   integration

Communication     pattern   

request-response, pub/sub

asynchronous, batch, offline, pub/sub, request-response possible

Payload   

Ephemeral   entities

Durable   messages

Latency   

Latency <10ms

Latency ~200ms

TTL   

TTL   < 1min

TTL may   be in years

Connection   

Concurrent listeners with high rates of connect/disconnect

Listener with long-lived durable connections

Scaling   

Scale   out to multiple listeners and then multiple relay endpoints

Scale   out with more entities and data sharding

Topology   

Fixed topology

Variable topology

Applications   

Real-time   data (telemetry)
Distributed   systems
Event   feed
Connectivity   to legacy systems/databases
Live-status   monitoring
Multi-player   games (interactive – Pong)
Durable   data (orders)
SOA/Service   integrations
Chat
Load-leveling
State synchronization
(distributed)   workflows
Multi-player   games (turn-based – Poker)

Development   

WCF/HTTP

.Net client/REST API

Embed

Download

Download this episode

The Discussion

Add Your 2 Cents