У меня есть приложение ASP.NET 4.5 Web API поверх IIS 8.5.ASP.NET через IIS обрабатывает только один запрос асинхронного запроса
Сервер AWS EC2.
У меня есть ActionFilter
, который регистрирует URL-адрес входящего запроса. Таким образом, он записывается в первый раз, когда запрос «входит» в мое приложение.
Я выдаю 2 запроса одновременно (используя Почтальон), и я вижу, что мой ActionFilter
не вызвал мой первый запрос.
Этот запрос включает async-await образец по запросу БД.
Я сделал это дважды:
- 2 запроса на тот же URL с различными параметрами (это веб-апи приложение)
- 2 запросы к различным URL (следовательно, различные
ApiController
)
Я использую настройки IIS «из коробки».
- Как я могу подойти к этой проблеме?
- Какие параметры конфигурации IIS необходимо проверить?
- Исправьте меня, если я ошибаюсь, но асинхронный ожидание не имеет значения, потому что потоки
ThreadPool
должны иметь возможность обрабатывать несколько синхронных вызовов, не так ли?
Спасибо!
Вам нужно отладить себя и выяснить, где заблокированы запросы. Хорошей отправной точкой было бы заменить весь доступ к БД на «waitait Task.Delay (10000);» и посмотреть, есть ли у вас одна и та же проблема ... Приведение в соответствие с [MCVE] имеет решающее значение для того, чтобы вопрос SO был подотчетен - так что потратите немного время подходит с одним. –
Вы уверены, что запросы одновременно отправляются одновременно? Может быть, почтальон упорядочивает запросы? – Sunshine