azureazureservicebusservicebus

Azure Service Bus: What is a request and a message?


Our Application is using Azure service bus for messaging purpose. We created few topics and subscribers. We will send around 500 messages per day, but in the graph it shows hundreds of thousands of requests for 500 messages. Our billing price is also around 800$ per month. This is too much for 500 * 30 messages. I am not able to understand why the price is this much and also I want to know what does the requests in the graph mean?.

If the reason for the price is because of number of requests then how can I reduce the number of requests?. Messages I am seeing correctly. The problem is only with requests.

This is Just a sample Graph for your reference(Not original). In original graph I see around 100k of requests for 500 messages. enter image description here


Solution

  • Here, under FAQ: https://azure.microsoft.com/en-us/pricing/details/service-bus/

    How is the Operations meter calculated for queues and topics?

    For brokered entities (queues and topics/subscriptions), an operation is any API interaction with Service Bus service on any protocol.

    A send, receive delete for a message that is less than or equal to 64KB in size is considered as one billable operation. If the message is greater than 64KB in size, the number of billable operations is calculated according to the message size in multiples of 64KB. For example, an 8 KB message sent to the Service Bus will be billed as one operation, but a 96 KB message sent to the Service Bus will be billed as two operations. Reading the 8KB message with a lock and then completing or explicitly abandoning the message will be billed as two operations. Renewing the lock on a message also incurs an operation.

    Multiple deliveries of the same message (for example, message fan out to multiple subscribers or message retrieval after abandon, deferral, or dead lettering) will be counted as independent operations. For example, in the case of a topic with three subscriptions, a single 64KB message sent and subsequently received will generate four billable operations, one “in” plus three “out”, assuming all messages are delivered to all subscriptions and deleted during the read.

    Additionally creating, reading (listing), updating and deleting a queue, topic or subscription will each incur an operation charge.

    Operations are API calls made against queue or topic/subscription service endpoints. This includes Management, Send/Receive and Session State Operations.