Forum Discussion
BasHamer
Apr 20, 2020Copper Contributor
Multi tenant rate throttling for external resources
I'm building a reporting app that consumes data from a customer's Azure Devops. There will be a daily import that runs maybe 50k requests to the customer's installation of Azure Devops (this takes ma...
BasHamer
Apr 22, 2020Copper Contributor
The solution I'll try
For the part where I expect the load to become problematic I'll do the following;
Each tenant will have their own resource group which will contain a
Queue
Function
API gateway
The API gateway will be in front of the external system and will take care of the rate-limiting for the function. This could create a possibly high reprocess rate from the queue (and I'd pay to fail a request I'm paying for). I'd limit the function from scaling as well, but the only way to get fine-grained control is to put in an API gateway.
This will only work for so many tenants as I'd hit limits on resource groups and functions.
I'm not thrilled with this solution, but it looks plausible.