A user is building a system where a user definable Api is intended to be executed 500k times per month.
The operations team works all weekdays in an average of 10 hours a day, so a rough estimation could be 1.6k executions per hour.
The automation script linked to the custom Api could take from 5 to 10 seconds to execute and provide the results.
Based on the metrics provided, what could be a good practice to determine the DMS size.
According to the metrics, the User-Defined APIs feature should be able to handle that amount of requests (~1 every two seconds if my calculations are correct). If that trigger rate is correct, even a single DMA should be able to handle this. (Do however keep in mind any other functionality that may cause load on the agent).
One thing that I would flag however is the amount of time it takes for the API request to complete. 5-10 seconds seems already on the high side. We would recommend keeping API calls as fast as possible. There is a limitation on the amount that can be handled simultaneously, so if these scripts are just waiting there for a long time, they are keeping a spot locked. (See note at the top of this page for more details.)
Could you maybe share some more insight on the use case where this many calls are done on an API that takes quite some time to return? This could maybe help me give some additional tips/advice.