3

Webサイトの自動展開にPowerShellを使用していますが、最近、PSで設定できないAppPool設定が見つかりました。または少なくとも私はそれを行う方法を見つけることができませんでした。

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

「PrivateMemoryLimit」をある値に設定する必要がありますが、ApplicationPoolまたはApplicationPoolRecyclingオブジェクトにそのようなプロパティがないようです。

この問題の回避策を知っている人はいますか?

4

3 に答える 3

9

このスクリプトは、Get-WebconfigurationSet-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
}
于 2012-06-25T10:27:08.683 に答える
4

既存のものを使うのに苦労したので、答えを追加しています。

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

foreach ($appPool in $applicationPools){
Set-ItemProperty IIS:\AppPools\$appPool.name `
-Name recycling.periodicrestart.privateMemory -Value 7000000
}
于 2015-05-15T17:45:17.997 に答える
0

あなたの回答は、私がWSUSサーバーで抱えていた問題の解決策を思いつくのに役立ちました。問題が発生しているのはアプリケーションプールのサイズであることがわかっていたので、次のPSスクリプトを作成して、サーバーWsusPoolのルートに適用しました(3つあります)。接続エラーが発生しましたが、選択しませんでした。ヘルプ。イベントビューアのイベントIDは、12002、12012、12032、12022、12042、12052、および12072でした。OUWSUSReset Server Node

Set-WebConfiguration "/system.applicationHost/applicationPools/add[@name='WsusPool']/recycling/periodicRestart/@privateMemory" -Value 0
于 2018-09-12T16:13:36.777 に答える