В случае, если метод контроллера обращается к стороннему ресурсу, то время его выполнения определённо зависит от множества обстоятельств: количество данных/ширина канала, время обработки запроса сторонним ресурсом, длина очереди к ресурсу и т.п.
Чем это чревато: если запросов будет довольно много, то отправив много запросов можно заблокировать все потоки в пуле, тем самым сделав недоступным сервер для обработки новых запросов.
Как вариант - заюзать на фронте nginx
А если допустимо - принимать CancellationToken и передавать его в долговыполняющиеся операции
Это может понадобиться в случае, если пользователь может сам отменить запрос или ему надоело ждать и он закрыл браузер
Чем это чревато: если запросов будет довольно много, то отправив много запросов можно заблокировать все потоки в пуле, тем самым сделав недоступным сервер для обработки новых запросов.
Как вариант - заюзать на фронте nginx
А если допустимо - принимать CancellationToken и передавать его в долговыполняющиеся операции
Это может понадобиться в случае, если пользователь может сам отменить запрос или ему надоело ждать и он закрыл браузер