Export (0) Print
Expand All

QueueDescription.EnableExpress Property

Gets or sets whether to enable the queue to be partitioned across multiple message brokers. An express queue holds a message in memory temporarily before writing it to persistent storage.

Namespace:  Microsoft.ServiceBus.Messaging
Assembly:  Microsoft.ServiceBus (in Microsoft.ServiceBus.dll)

function get EnableExpress () : boolean 
function set EnableExpress (value : boolean)

Property Value

Type: System.Boolean
true to enable the queue to be partitioned across multiple message brokers;; otherwise, false.

In scenarios that require reduced latency, you can specify that messages are temporarily stored in memory instead of immediately being written to the database (stable storage). In addition to low latency scenarios, this feature has the following advantages:

  • If a message is sent to a queue or topic, the message is cached in memory. This increases throughput and reduces latency because there is no access to stable storage at the time the message is sent.

  • If a message remains in the queue for more than a few seconds, it is automatically written to stable storage, thus protecting it against loss due to an outage.

Messages that are consumed within a few seconds are not written to the database. Send, Receive, and Complete operations execute faster because these operations only modify the message cache.

If a message is sent to a topic with multiple subscriptions, and is subsequently received from some but not all subscriptions, the message is written to stable storage.

If you are processing messages with critical information that must not be lost, you can force Service Bus to immediately persist the message to stable storage, by using the BrokeredMessage.ForcePersistence property.

QueueDescription qd = new QueueDescription(QueueName);
qd.EnableExpress = true;

Community Additions

© 2015 Microsoft