Srinivasu Pemma
What are the differences between Azure Storage Blob and Service Bus
By Srinivasu Pemma in Azure on May 30 2018
  • Srinivasu Pemma
    May, 2018 30

    Azure supports two types of queue mechanisms: Storage queues and Service Bus queues.Storage queues, which are part of the Azure storage infrastructure, feature a simple REST-based GET/PUT/PEEK interface, providing reliable, persistent messaging within and between services.Service Bus queues are part of a broader Azure messaging infrastructure that supports queuing as well as publish/subscribe, and more advanced integration patterns. For more information about Service Bus queues/topics/subscriptions, see the overview of Service Bus.you should consider using Storage queues when:Your application must store over 80 GB of messages in a queue. Your application wants to track progress for processing a message inside of the queue. This is useful if the worker processing a message crashes. A subsequent worker can then use that information to continue from where the prior worker left off. You require server side logs of all of the transactions executed against your queuesyou should consider using Service Bus queues when:Your solution must be able to receive messages without having to poll the queue. With Service Bus, this can be achieved through the use of the long-polling receive operation using the TCP-based protocols that Service Bus supports. Your solution requires the queue to provide a guaranteed first-in-first-out (FIFO) ordered delivery. You want a symmetric experience in Azure and on Windows Server (private cloud). For more information, see Service Bus for Windows Server. Your solution must be able to support automatic duplicate detection. You want your application to process messages as parallel long-running streams (messages are associated with a stream using the SessionId property on the message). In this model, each node in the consuming application competes for streams, as opposed to messages. When a stream is given to a consuming node, the node can examine the state of the application stream state using transactions. Your solution requires transactional behavior and atomicity when sending or receiving multiple messages from a queue. Your application handles messages that can exceed 64 KB but will not likely approach the 256 KB limit. You deal with a requirement to provide a role-based access model to the queues, and different rights/permissions for senders and receivers. Your queue size will not grow larger than 80 GB. You want to use the AMQP 1.0 standards-based messaging protocol. For more information about AMQP, see Service Bus AMQP Overview. You can envision an eventual migration from queue-based point-to-point communication to a message exchange pattern that enables seamless integration of additional receivers (subscribers), each of which receives independent copies of either some or all messages sent to the queue. The latter refers to the publish/subscribe capability natively provided by Service Bus. Your messaging solution must be able to support the "At-Most-Once" delivery guarantee without the need for you to build the additional infrastructure components. You would like to be able to publish and consume batches of messages.

    • 2
  • Madan Shekar
    Nov, 2018 5

    please go through this link https://www.c-sharpcorner.com/UploadFile/fe6121/deep-dive-into-azure-storage-queue-vs-azure-service-bus-queu/

    • 1
  • vijay kumar
    Oct, 2021 27

    Azure storage queues can be used for simple queue requriements but when you need more througput and pub sub pattern to be impemented service bus provide service bus queues and topics.

    Azure queue has message size limitation of 64kb which is much more in service bus.

    Azure service bus provides FIFO mechanism and message consistency. It also has a dead letter queue which ensures no messages are lost.

    • 0


Most Popular Job Functions


MOST LIKED QUESTIONS