Sagar Lad
What are the differences between the Azure Storage Queue and the Azure Service Bus Queue?
By Sagar Lad in .NET on Jul 11 2021
  • Christian Ashish
    Aug, 2021 2
















































    Foundational capabilities
    Comparison CriteriaStorage queuesService Bus queues
    Ordering guaranteeNo

    For more information, see the first note in the Additional Information section.

    Yes - First-In-First-Out (FIFO)

    (by using message sessions)
    Delivery guaranteeAt-Least-OnceAt-Least-Once (using PeekLock receive mode. It’s the default)

    At-Most-Once (using ReceiveAndDelete receive mode)

    Learn more about various Receive modes
    Atomic operation supportNoYes



    Receive behaviorNon-blocking

    (completes immediately if no new message is found)
    Blocking with or without a timeout

    (offers long polling, or the “Comet technique”)

    Non-blocking

    (using .NET managed API only)

    Push-style APINoYes

    Our .NET, Java, JavaScript, and Go SDKs provide push-style API.

    Receive modePeek & LeasePeek & Lock

    Receive & Delete
    Exclusive access modeLease-basedLock-based
    Lease/Lock duration30 seconds (default)

    7 days (maximum) (You can renew or release a message lease using the UpdateMessage API.)
    30 seconds (default)

    You can renew the message lock for the same lock duration each time manually or use the automatic lock renewal feature where the client manages lock renewal for you.

    Lease/Lock precisionMessage level

    Each message can have a different timeout value, which you can then update as needed while processing the message, by using the UpdateMessage API.
    Queue level

    (each queue has a lock precision applied to all of its messages, but the lock can be renewed as described in the previous row)

    Batched receiveYes

    (explicitly specifying message count when retrieving messages, up to a maximum of 32 messages)
    Yes

    (implicitly enabling a pre-fetch property or explicitly by using transactions)

    Batched sendNoYes

    (by using transactions or client-side batching)


    • 0


Most Popular Job Functions


MOST LIKED QUESTIONS