У нас есть виртуальная машина (VMWare), которая при нагрузочном тестировании, кажется, начинает ставить в очередь запросы для 120 пользователей.
Кажется, что процессор не загружает более 70%, поэтому я изо всех сил пытаюсь понять, почему он не может обрабатывать запросы?
Процессорное время показано внизу слева красным цветом.
ЦП - не единственное узкое место для обработки запросов. Все зависит от того, что делает ваше приложение. Если вы выполняете много работы, связанной с вводом-выводом, это может быть большим фактором, чем процессор.
ASP.net имеет ограниченное количество потоков в ThreadPool, поэтому, если они все заняты, они начнут стоять в очереди. Проверьте этот кусок для некоторых советов по очереди запросов.
Вы делаете много вставок / обновлений sql на запрос? Узнайте время на них, даже с Glimpse. Их слишком много, и они задерживают потоки / запросы в ожидании ответов.
Вы звоните на какой-нибудь сторонний api? Они задерживают ожидающие потоки / запросы, и существуют ограничения на количество одновременных подключений.
Что делает приложение для каждого пользователя? вы получаете более 1000 записей?
Проверь это Статья поддержки MS Connect, существует большое количество параметров конфигурации IIS, которые могут вам помочь, если вы еще не настроили их.
Опять же, это без знания того, что и как делает ваше приложение.