Azure / azure-service-bus

☁️ Azure Service Bus service issue tracking and samples
https://azure.microsoft.com/services/service-bus
MIT License
585 stars 781 forks source link

Standard tier operations/sec vs Premium tier MU #557

Closed lucasmaj closed 2 years ago

lucasmaj commented 2 years ago

How many operations/sec can Premium MU handle?

I have been recently throttled on Standard tier and I am considering switching to Premium. Our current monthly spent on ServiceBus would justify 1 Premium MU but not more. I don't want to switch to premium knowing that I might need 4MUs. But how many Premium MUs am I going to need for my current Standard tier load? How do I find out? Just "trying it" for few days is not an option on live production system of mine.

I have tried to ask Azure support and other Azure agents so many time, and could not get answer for quite some time now.

Thanks in advance.

SeanFeldman commented 2 years ago

I'm unaware of a specific throughput number per MU, but you won't be throttled as you were on a standard tier. That's because you don't have credits to spend, and past that have to back off. With premium, you're the only user of the resources unless your utilization is so high that it pins down CPU and memory resources. Do you have specific numbers to share? What's your expected throughput per second, or required latency, etc.?

lucasmaj commented 2 years ago

I have found out from Azure support via support incidents that that they have upped my limit to 4000 operations/second, 1000 operations/second being the normal/default limit. Looking at Azure portal I am guessing "operations" = "requests"? Looks like on a normal day like today I am under 1500 requests/sec. So, again, how many premium MUs are needed to handle steady load of 1500requests/sec. How many premium MUs for peak 4000 operations/sec.

SeanFeldman commented 2 years ago

I've had a similar ask from clients that wanted to estimate their spending prior to committing. @EldertGrootenboer is this something that is documented?

EldertGrootenboer commented 2 years ago

In our benchmarks we normally see numbers of around 4MB/s per MU, as described here. However, it will depend a lot on which features you are using. There is not a single answer to give here, as different combinations of features can result in different performance outcomes. We recommend using the benchmark tool which is linked in the linked article, with a setup that matches your production workload as close as possible. Moreover, the article will also help you tweak your performance, so definitely worth a read.

lucasmaj commented 2 years ago

4MB/s per MU ?

EldertGrootenboer commented 2 years ago

@lucasmaj Correct, although it will depend on your specifics, such as message size, features used, etc. That is why we recommend using the benchmark tool with your own production-like workloads. If there are any specific questions we can help with, please let me know.