Questions tagged «memory-leak»

1
如何限制IIS中的应用程序使用的内存?
IIS工作进程正在我们的服务器上占用大量内存。我想限制每个应用程序可以使用的内存。我是否应该为虚拟内存限制或私有内存限制设置一个限制。IIS中的每个应用程序都在其自己的应用程序池中。 如果我将专用内存限制设置为500MB,将虚拟内存限制设置为3GB。应用程序池何时回收?达到500MB或达到3GB后会回收吗?

4
某些东西耗尽了所有内存(我怀疑某些应用程序内存泄漏)。如何检测到什么?
我有运行liquidsoap + icecast捆绑软件和简单网站(httpd + mysqld)的服务器。没什么特别的。每天大约2000+的访问者,平均同时在线的访问者约为50。 服务器有8GB RAM。随着时间的流逝,尽管服务器上没有启动任何新操作,也没有新用户,但可用内存量不断减少。在某个时候它开始交换,服务器上的负载增加并且变得无响应。通常我要做的就是重启服务器... 如何检测到底是什么导致内存泄漏?我使用top监视资源使用情况,但据我所知,它没有任何帮助: 有什么办法找出使用那么多内存的东西吗?还是什么开始大量交换到磁盘?有什么方法可以释放内存而无需重新启动服务器?

4
如何使用kdump / crash调查OOM问题?
问题 多次“内存不足”消息后,服务器崩溃了,我试图查明罪魁祸首。如果在用户区中-哪个进程。如果在内核中-哪个内核模块。 细节 我正在尝试找出如何使用崩溃实用工具来调查是什么触发了服务器上的OOM。 作为安装新服务器对的一部分,我开始了14TB DRBD设备的初始化。大约那个时候,在使用DRBD同步器速率配置并上下移动某些绑定网络接口时,其中一台服务器崩溃了。在30秒内,它产生了39条Out of memory: Kill process ####消息。然后它崩溃了: Kernel panic - not syncing: Out of memory and no killable processes... 系统崩溃触发了一个kdump。现在,我有一个不错的vmcore.flat文件,应该可以直接使用它来调查问题,但是我很难找出所有内存的去向。 我知道的唯一资源是Dedoimedo的站点(该站点提供了很好的说明)以及Kernel Crash Book。这些也恰巧是答案中建议的唯一资源,因此我认为这crash是调查的唯一方法。 如果有另一种方法可以对事件进行事后分析,我愿意接受。正是这是crash我知道的唯一实用程序。我现在所拥有的只是vmcore.flat文件,我所需要知道的是哪个组件占用了所有内存。我怀疑内核模块有问题,更具体地说是绑定模块之一(当我关闭接口时触发了它),DRBD模块(在CentOS 6.3上从树构建的版本8.3.15)或其中一个10G以太网模块(mlnx_en从我关闭的接口树中构建,或在bnx2x保持活动状态的接口中树内构建)。我所需要知道的是,是否有办法证实我的怀疑。 到目前为止,我仅使用崩溃实用程序提取了以下信息: 检查使用了多少内存 $ crash /usr/lib/debug/lib/modules/2.6.32-279.5.2.el6.x86_64/vmlinux vmcore.flat .... crash> kmem -i PAGES TOTAL PERCENTAGE TOTAL MEM 16482587 62.9 GB ---- FREE 54610 …

2
Windows 2008 * R2 *上的WmiPrvSE内存泄漏
我已经在Windows 2008上看到了有关WmiPrvSE泄漏的参考,但是关于Windows 2008 R2却一无所获。 我们正在Hyper-V(2008)之上运行R2。我们还运行NSClient ++,用于从opsview进行监视。随着时间的流逝,WmiPrvSE.exe开始使用大量内存,从而导致内存警报问题(少于10%的可用空间)。VM有2GB,在我杀死它之前WmiPrvSE消耗多达500-600MB。 终止进程似乎没有任何负面影响。它再次启动,我还没有发现任何问题。但是在一两天后,情况又回到了原来的状态。 有什么想法做什么?WmiPrvSE.exe,资源监视器不显示任何磁盘或网络IO。只是慢慢地攀登私人记忆... 编辑添加:我们不在运行群集或Windows系统资源管理器。我能猜到的唯一的常规WMI用户是NSClient ++,但在其他服务器上似乎没有这个问题。

2
令人困惑的内存泄漏。什么在此系统上使用约10GB的内存?
运行约18小时后,该系统使用了约10GB的内存,导致在执行我们的常规任务时触发OOM杀手: # free -h total used free shared buffers cached Mem: 14G 9.4G 5.3G 400K 27M 59M -/+ buffers/cache: 9.3G 5.4G Swap: 0B 0B 0B # cat /proc/meminfo MemTotal: 15400928 kB MemFree: 5567028 kB Buffers: 28464 kB Cached: 60816 kB SwapCached: 0 kB Active: 321464 kB Inactive: 59156 kB Active(anon): …

3
SVCHOST / Workstation服务上的Windows 2012 Core Extreme内存使用
我们大约有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和其他工具,但是在最有问题的服务器上,这些工具甚至无法运行。另一方面,他们提供的结果仅表明该过程中确实存在内存泄漏。 有没有一种方法可以从此过程中释放内存或完全避免错误?我们不想重新启动,一旦过程处于错误状态,我们就无法重新启动。该过程被冻结。 我们正在尝试避免进行定期重新启动以“修复”此问题,因此,所有答复将不胜感激。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.