machine.config processModel autoConfig="true или false" для явных значений в.net 4.0
Привет я хочу обновить processModel файла machine.config моего сервера. В настоящее время его значение ниже:
<system.web>
<processModel autoConfig="true"/>
</system.web>
Я хочу обновить его следующими ниже изменениями:
<system.web>
<processModel autoConfig="true"
maxWorkerThreads = "100"
maxIoThreads = "100"
minWorkerThreads = "50"
minIoThreads = "50"
/>
</system.web>
Я хочу использовать другие значения processModel (см. Значения по умолчанию на: msdn.microsoft.com/en-us/library/7w2sway1(v=vs.100).aspx) в качестве значений по умолчанию со значениями, которые я явно определил выше. У меня есть вопрос здесь: каково будет значение autoConfig="?" поскольку некоторые сообщения в Интернете предполагают, что значение autoConfig должно быть "True" (см. https://tiredblogger.wordpress.com/2008/09/17/tweaking-net-machineconfig-for-production-deployments/), как autoConfig=True устанавливает все значения по умолчанию, кроме того, что я определил явно.
Где, как говорится в другом посте, необходимо установить autoConfig = false, чтобы эти пользовательские значения вступили в силу. (см.: http://geekswithblogs.net/StuartBrierley/archive/2009/09/30/tuning-iis---machine.config-settings.aspx)
В MSDN ( msdn.microsoft.com/en-us/library/7w2sway1(v=vs.100).aspx) определение autoConfig="true/false" имеет вид
autoConfig=True: указывает, что ASP.NET автоматически настраивает атрибуты в предыдущем списке для достижения оптимальной производительности в зависимости от конфигурации компьютера. autoConfig=False: указывает, что ASP.NET должен использовать явно определенные значения для атрибутов в предыдущем списке.
Другой вопрос здесь: в соответствии с MSDN, если я установлю autoConfig = False и явно определю мои выше 4 значения ключа processModel, какие будут значения других ключей processModel, таких как webGarden, memoryLimit, cpuMask и т. Д.? мне нужно также установить другие ключи / значения processModel? Я использую эти настройки в machine.config приложения asp.net 4.0, размещенного на iis8 Win Server 2012.
Заранее спасибо за помощь.
1 ответ
Читая об processModel autoConfig=true/false здесь (MSDN https://msdn.microsoft.com/en-us/library/7w2sway1(v=vs.100).aspx), он говорит, что когда это значение равно true, Пять перечисленных здесь атрибутов конфигурации (maxWorkerThreads, maxIoThreads, minFreeThreads, minLocalRequestFreeThreads и maxConnection) "устанавливаются в соответствии со статьей базы знаний на http://support.microsoft.com/?id=821268".
Более того, невозможно установить minWorkerThreads выше, чем maxWorkerThreads… Среда выполнения обнаруживает несоответствие и просто устанавливает значение "min" в значение по умолчанию. autoConfig напрямую не влияет на minWorkerThreads и minIoThreads, но вместо этого на них влияют их аналоги, такие как maxWorkerThreads и maxIoThreads.
Я провел несколько тестов с различными значениями рабочих потоков с autoConfig = true / false, ниже приведены их результаты.
<processModel autoConfig="true"
/>
Результат: maxWorkerThreads 400 maxIoThreads 400 minWorkerThreads 4 minIoThreads 4
<processModel autoConfig="false"
/>
Результат: maxWorkerThreads 400 maxIoThreads 400 minWorkerThreads 4 minIoThreads 4
<processModel autoConfig="true"
maxWorkerThreads = "70"
maxIoThreads = "70"
minWorkerThreads = "35"
minIoThreads = "35"
/>
Результат: maxWorkerThreads= 400 maxIoThreads= 400 minWorkerThreads= 140 minIoThreads= 140
<processModel autoConfig="false"
maxWorkerThreads = "70"
maxIoThreads = "70"
minWorkerThreads = "35"
minIoThreads = "35"
/>
Результат: maxWorkerThreads= 280 maxIoThreads =280 minWorkerThreads= 140 minIoThreads =140
<processModel autoConfig="false"
maxWorkerThreads = "150"
maxIoThreads = "150"
minWorkerThreads = "70"
minIoThreads = "70"
/>
Результат:
maxWorkerThreads= 600
maxIoThreads =600
minWorkerThreads =280
minIoThreads =280
<processModel autoConfig="true"
maxWorkerThreads = "150"
maxIoThreads = "150"
minWorkerThreads = "70"
minIoThreads = "70"
/>
Результат:
maxWorkerThreads= 400
maxIoThreads =400
minWorkerThreads =280
minIoThreads =280