Как установить значение IIS ApplicationPool "Private Memory Limit" с помощью PowerShell



Я использую PowerShell для автоматического развертывания веб-сайта и недавно нашел параметр AppPool, который не может быть установлен с помощью PS. или, по крайней мере, мне не удалось выяснить, как это сделать.



$appPool = $serverManager.ApplicationPools.Add($sitename)...


Мне нужно установить "ограничение частной памяти" на некоторое значение, но похоже, что такого свойства нет у объекта ApplicationPool или ApplicationPoolRecycling.



Знает ли anybode обходной путь для этой проблемы?

630   3  

3 ответов:

Этот скрипт использует Сделать-Webconfiguration и Набор-WebConfiguration, чтобы получить значение для собственной памяти для всех приложений бассейны. Вы можете задать для каждого из них по отдельности или установить значения пула приложений по умолчанию, чтобы они наследовались. Я прокомментировал линию, которая на самом деле делает набор.

import-module webadministration

$applicationPoolsPath = "/system.applicationHost/applicationPools"
$applicationPools = Get-WebConfiguration $applicationPoolsPath

foreach ($appPool in $applicationPools.Collection)
{
    $appPoolPath = "$applicationPoolsPath/add[@name='$($appPool.Name)']"
    Get-WebConfiguration "$appPoolPath/recycling/periodicRestart/@privateMemory" 
    # Set-WebConfiguration "$appPoolPath/recycling/periodicRestart/@privateMemory" -Value 1000
}

Я добавляю ответ, потому что у меня возникли проблемы с использованием существующего.

import-module webadministration
$applicationPools = Get-ChildItem IIS:\AppPools

foreach ($appPool in $applicationPools){
Set-ItemProperty IIS:\AppPools\$appPool.name `
-Name recycling.periodicrestart.privateMemory -Value 7000000
}

Ваши ответы помогли мне найти решение проблемы, которая возникла у меня с серверами WSUS. Я знал, что это был размер пула приложений для WsusPool, который давал мне проблемы, поэтому я сделал следующий сценарий PS и применил его к корневому OU для моих серверов WSUS (у меня есть 3) я получал ошибку подключения, и мой вариант Reset Server Node не помог. У средства просмотра событий были идентификаторы событий 12002, 12012, 12032, 12022, 12042, 12052, и 12072.

Set-WebConfiguration "/system.applicationHost/applicationPools/add[@name='WsusPool']/recycling/periodicRestart/@privateMemory" -Value 0

Comments

    Ничего не найдено.