服务器内存占用不断的增加 & 任务管理器(PF使用率)不断的增加:关注句柄数(转)

原文链接:http://www.cnblogs.com/personnel/p/4583038.html

最近一二个月以来,我发现服务器的内存占用正按着每天60M的速度增加。

一台windows 2003的服务器(2G内存),刚刚启起时占用内存:600M左右。

运行20天后,内存占用(PF使用):1.8G

其实物理内存使用情况在这20天来并没有太大的变化,但虚拟内存占用明显在不停的增加。

我通过“任务管理器”一直也找不到是哪个进程占用的这么多的内存。

也许是因为“任务管理器”里显示的内存占用仅代表的是“物理内存占用”吧。

今天对比服务器上和本地电脑上的“任务管理器”的显示情况,偶然发现它们之前的一个不同之处:“句柄数”:

服务器上的“句柄数”达到3万多个,而本地电脑上的“句柄数”只有1.6万个。

通过在百度搜索得知,句柄一般包括文件句柄、窗口句柄等。

我在想,服务器为什么会有这么多的句柄呢,到底又是什么类型的句柄?

我们在“任务管理器”上切换到“进程”选项卡,然后点击菜单“查看”->“选项列”,选择其中的“句柄计数”,然后看到下面的这个:

原来是 360tray.exe 的“句柄数”达到1.4万多个。

我在服务器上完全退出360(点击退出的时候,整个过程可能需要等20秒),然后看到服务器上的内存使用(PE使用率)马上降下来了:

以后我再也不用每隔一个月重启一下服务器了,只需每隔一个月重启一下360就行了。

最后我想说的是,关于服务器的内存占用不断增加的原因其实有很多种,而我遇到的只是其中之一吧。

————————————————————————————————————————————————————————

2019年1月22日更新

通过windows的计划任务和批处理程序配合,可以每5分钟重启一次占用句柄比较高的进程所属程序。

原文地址:https://www.cnblogs.com/CryOnMyShoulder/p/9907301.html