Eksportuj (0) Drukuj
Rozwiń wszystko
Ta zawartość nie jest dostępna w wymaganym języku. Wersja w języku angielskim znajduje się tutaj.

What's New in the Azure SDK 2.1 Release (July 2013)

Updated: August 18, 2014

The Microsoft Azure Service Bus July 2013 release contains a number of new features and capabilities. This topic summarizes the new features and contains links to more information.

For detailed information about paired namespaces and high availability, see the new topic Asynchronous Messaging Patterns and High Availability.

Sometimes, due to short-lived or transient outages, when a Service Bus service namespace becomes unavailable you are unable to send or receive messages to the namespace hosting the queue, topic, or subscription. Previously, the typical workaround was to set up a separate namespace that can act as a backup, then implement extensive failover and retry logic.

For more robust high availability, Service Bus now supports Paired Namespaces, which enables you to connect two namespaces. When you activate the secondary namespace, messages are stored in the secondary queue for delivery to the primary queue at a later time. If the primary container (namespace) becomes unavailable for some reason, automatic failover enables the messages in the secondary queue to be delivered to the primary queue. This feature is called Send Availability, which enables a single sender to continue to process messages in the event that one of the new namespaces encounters a messaging entity that becomes unavailable. When the primary entity is unavailable, messages are sent to the secondary entity. Set the Microsoft.ServiceBus.Messaging.SendAvailabilityPairedNamespaceOptions.EnableSyphon property to true on cloud service worker roles (backend processing), not on Web sites and Web roles (frontend processing).

Note that syphons from secondary to primary do not preserve message ordering.

For example:

factory.PairNamespaceAsync(new SendAvailabilityPairedNamespaceOptions(
                backlogQueueCount: 10,
                failoverInterval: TimeSpan.FromMinutes(5),
                enableSyphon: true));

For more information, see

In this release, the Azure Tools for Visual Studio contain enhancements and changes to the management of Service Bus messaging entities using Server Explorer. The most noticeable change is that the Service Bus node is now integrated into the Azure node. For more information, see Browsing Service Bus Resources with the Visual Studio Server Explorer.

Additionally, there has been a change to the code generated by the Azure Worker Role with Service Bus Queue project template. This code now uses an event-driven “message pump” programming model using the OnMessage method. For example, the project type generates the following template:

public override void Run()
            Trace.WriteLine("Starting processing of messages");

            // Initiates the message pump and callback is invoked for each message that is received, calling close on the client will stop the pump.
            Client.OnMessage((receivedMessage) =>
                        // Process the message
                        Trace.WriteLine("Processing Service Bus message: " + receivedMessage.SequenceNumber.ToString());
                        // Handle any message processing specific exceptions here


For more information, see the “Event-Driven Message Programing Model” section in What's New in the Azure SDK 2.0 Release (April 2013).

In this release, Azure supports Notification Hubs as part of the Azure SDK 2.1, in the Microsoft.ServiceBus.dll assembly. You can now create, update and delete notification hubs programmatically, manage your device registrations, and send push notifications to all your mobile clients across all platforms (Windows Store, Windows Phone 8, iOS, and Android). Learn more about notification hubs on MSDN in the Notification Hubs Overview topic, or watch the notification hubs //BUILD/ presentation here.

© 2014 Microsoft