如何解释正在运行的进程列表之外的Windows Server上的内存使用情
我有一个运行速度有点慢的 Windows 2003 Server,其中提交费用和页面文件使用率一直上升,直到我最终重启.要解决这个问题,我需要找出消耗所有内存的东西,这就是最大的谜团. 任务管理器的当前统计数据: Physical Memory (K): 2096400 Commit Charge (K): 5364848 Page file usage: 5.11 GB 好的,让我们拉起SysInternals Process Explorer并检查所有运行的工作集大小.最大的罪魁祸首是使用121,980K WS,481,284K VM Size的Tomcat实例.那里什么都没有 下一步:SysInternals pslist:pslist -m,按列拆分输出并计算报告的61个进程的列总和. SUM (Working Set) : 681,484 K SUM (Private Bytes): 593,424 K 我是否从根本上误解了工具报告的内容?我一直认为操作系统实际上会比一个进程映射的全部虚拟内存承诺更少的内存,假设它实际上不会使用那么多,并且在这里查看VM是一只红鲱鱼. JP,我相信你的评论是这是一个自动构建/单元测试服务器,运行的代码比稳定代码要好.我的猜测是这个服务器需要经常重启,因为运行不稳定的代码可能有内存泄漏,给你你看到的症状.内存泄漏不会在运行进程的任何进程树上列出,因为它们是由不再存在的进程抓取的内存,并且仍然被分配,即使与它们关联的进程早已消失.获得一个频繁的维护窗口,允许您自动重启此计算机,可能每晚,每周几次,或每周一次,具体取决于此行为开始出现性能问题的速度. 我们在Windoze上安装了Oracle应用服务器服务器,需要每天重启两次.我们在午餐时间和每天半夜都会把用户踢出去.那是几年前,据称来自Oracle的稳定产品代码. (编辑:西双版纳站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |