IIS三种应用程序池回收方法(保姆级教程)
Posted 龙叔运维
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IIS三种应用程序池回收方法(保姆级教程)相关的知识,希望对你有一定的参考价值。
IIS上跑的应用 内存老是缓慢持续的上升,一时之间又找不到问题所在?
那你不如先定时回收一些IIS的应用程序池,来定时释放一下缓存
本文教你三种定时回收的方法,可以根据需要进行选择
1、IIS自带-间隔一段时间进行自动回收
IIS自带的两种定时回收策略之一
设置一个数值(单位为分钟),每间隔这段时间之后,就会自动进行回收操作
如实设置为0则意味着不会按固定间隔回收
2、IIS自带-每日定点回收
IIS自带的两种定时回收策略之一
设置一个或多个时间点 每天都到了这个点 都会自动进行回收操作
缺点是不能设置某天某点,或者例如每周六0点 这样的定时回收计划
毕竟大部分的情况不会进行每天回收 频率不会这么高
3、脚本-windows计划任务回收
除了IIS自带的两种定时回收方法之外,我们也可以用脚本加windows计划任务的方式去定时进行回收操作,而且时间设置上更加灵活
注意: 一定要用管理员权限操作
3.1、确定安装了 “IIS管理脚本和工具”
3.2、编写vbs脚本
编写VBS脚本,实现回收IIS应用程序池的逻辑操作
recyclepool.vbs 脚本内容如下(标红为回收操作 剩下的是打印日志,可以根据需要选择要不要)
appPoolName = WScript.Arguments(0)
Set oWebAdmin = GetObject("winmgmts:root\\WebAdministration")
Set oAppPool = oWebAdmin.Get("ApplicationPool.Name='" + appPoolName + "'")
oAppPool.Recycle
set fso=createobject("scripting.filesystemobject")
if (fso.fileexists("D:\\recycleIISPool\\recycleIISPool.log")) then
'1-forreading,2-forwriting,8-appending
set file=fso.opentextfile("D:\\recycleIISPool\\recycleIISPool.log",8,ture)
else
set file=fso.createtextfile( "D:\\recycleIISPool\\recycleIISPool.log",8,ture)
end if
file.writeline now&"---"&appPoolName&" Recycle OK!"
file.close
3.3、创建bat文件
因为要执行vbs脚本,所以创建一个bat可执行文件来进行调用vbs脚本的操作
recyclepool.bat 脚本内容如下(标红的是参数 就是你要回收的程序池名称)
cscript D:\\recycleIISPool\\recyclepool.vbs "testPool"
3.4、创建windows计划任务
整体操作步骤如下
欢迎关注我的公众号:龙叔运维
持续分享运维经验
以上是关于IIS三种应用程序池回收方法(保姆级教程)的主要内容,如果未能解决你的问题,请参考以下文章
在 IIS 10 / Windows Server 2019 中以编程方式回收应用程序池