我们大约有200台服务器,Hyper V,文件群集和IIS都遇到相同的问题,通过正常使用在服务器上发生一个事件,该事件使服务器上的RAM达到最大或接近最大。一旦发生这种情况,特别是SVCHOST / Workstation服务(通过将Workstation服务与其自身的SVCHOST隔离开来而被淘汰)将停止释放句柄/线程,并且该服务使用的内存永远不会释放。在某些极端情况下,我们拥有在255GB服务器上使用多达40GB RAM的工作站服务。在某些情况下,还会发现4000万个手柄。
重新启动后,问题当然消失了,并且直到W3进程或HyperV VM使用完所有内存后,问题才再次出现,此后,Workstation服务开始获取所有RAM。该过程非常慢,可能需要数周/数月,具体取决于服务器上的RAM数量。
我们的Hyper V服务器和IIS服务器都访问工作文件的共享,这些共享位于SSD存储上,因此它们的性能很高。我们已经安装了所有当前的补丁程序,但是还没有迁移到R2,因为我们拥有大量工具,这将使这成为重要的一步,并且找不到任何明确的迹象表明它将在R2中得到修复。
我们已经运行了ProcMon和其他工具,但是在最有问题的服务器上,这些工具甚至无法运行。另一方面,他们提供的结果仅表明该过程中确实存在内存泄漏。
有没有一种方法可以从此过程中释放内存或完全避免错误?我们不想重新启动,一旦过程处于错误状态,我们就无法重新启动。该过程被冻结。
我们正在尝试避免进行定期重新启动以“修复”此问题,因此,所有答复将不胜感激。