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
Другие вопросы по тегам