question

GerhardBrueckl avatar image
0 Votes"
GerhardBrueckl asked PramodValavala-MSFT commented

Expected Requests/Second for Azure Functions

I need to process about 5000 HTTP requests per second using either Azure Functions or Azure App Services
Those requests need to be transformed and written to Event Hub in the end

The HTTP requests contain a query string which has to be converted to JSON before sending it to Event Hub

I tried various implementations Azure Functions (C#, CSX, Python) and also App Services (C#) but I cannot really reach a throughput (requests/sec) for > 100 on P1V2 (210 ACUs)
CPU does not seem to be the bottleneck as it is always < 50%
also adding more nodes (Scale Up) does not really help a lot

Running the very same App service locally on my machine in VS debugger and IIS, I achieve 600 requests/sec

What is the expected throughput of a single node P1V2 plan for the scenario described above?

azure-webappsazure-functionsazure-webapps-performance
· 4
5 |1600 characters needed characters left characters exceeded

Up to 10 attachments (including images) can be used with a maximum of 3.0 MiB each and 30.0 MiB total.

Could you confirm if you are using async operations where possible? Many a case, this type of bottleneck is due to synchronous I/O operations.

Also, have you tried the Consumption Tier of Azure Functions? This use case would be perfect for it.

0 Votes 0 ·

yes, I actually tried async and sync in the Azure function with almost identical results
I also have very similar results if the Azure Function/Web App only returns HTTP 200 "OK" to the caller

Also, have you tried the Consumption Tier of Azure Functions? This use case would be perfect for it.

If 50 Mio/requests per day is the perfect use case for a consumption based, shared hosting - whats the point in a dedicated paid plan then in terms of costs and performance ?!

0 Votes 0 ·

Could you check your host.json settings for http for any limits set?

0 Votes 0 ·

If 50 Mio/requests per day is the perfect use case for a consumption based, shared hosting - what's the point in a dedicated paid plan then in terms of costs and performance?!

The dedicated plan guarantees compute capacity with a predictable cost and removes many limitations the consumption tier has like timeout. You can read more about the different hosting plans in the official docs.

Since the scenario that you describe performs a single operation, consumption tier does seem like a good option, but it would depend on how critical the service is. The premium plan is also something that you could consider.

0 Votes 0 ·

0 Answers