В IIS 7.5 используется только 1 ядро процессора.
У меня есть следующая конфигурация.
Четырехъядерный
Windows Server 2008
IIS 7.5
4 ГБ ОЗУ 32 бит
Я разместил приложение MVC 1 на этом сервере. Но при запуске этого приложения получается, что используется только 1 CPU Core.
Есть ли какие-либо настройки в IIS 7.5 или Windows Server, чтобы все доступные ядра использовались / использовались.
3 ответа
IIS уже использует все ядра по умолчанию. То, что вы, вероятно, видите, это один запрос, использующий один поток и, следовательно, одно ядро. Это по замыслу.
Если вы сделаете второй запрос к серверу, вы должны увидеть, что он попадает в новое ядро. С несколькими пользователями вы должны увидеть равномерное распределение по вашим ядрам.
Если вам нужен один запрос, чтобы на одной странице использовались все ядра, вам нужно специально разработать его для этого. Это потребует запуска нескольких потоков для обработки одного запроса. Это необычно для нагрузки типа IIS, хотя обычно для этого требуются десятки, сотни или тысячи пользователей, а не один пользователь, получающий 100% ресурсов сервера.
Вы можете установить привязку к процессору (через диспетчер задач) для процесса: w3wp.exe.
Вы спрашиваете, что вы можете сделать, чтобы во время выполнения кода использовалось более одного ядра?
Как вы это проверили?
Шутки в сторону.
Если у вас есть только один сеанс / пользователь, доступ является последовательным по одному cookie сеанса (asp.net сериализует всю обработку).
Чтобы действительно увидеть, что вы используете только одно ядро, вам нужно более 25% использования процессора. В зависимости от того, насколько вы плохой программист и насколько тривиальны ваши страницы, это может потребовать от двух пользователей одновременно и, возможно, от 2000... потому что страницы обычно должны обрабатывать FAST.
Так,
как ты это проверял? Что заставляет вас прийти к такому выводу?