Articles of 内存泄漏

每天早上6点左右,EC2实例的空闲内存突然下降

自从我在AWS上build立一个服务器后,我几个月来一直注意到,我的实例几乎每天都会在UTC时间上午6点左右的正常时间突然降低空闲内存。 这是一个t2.nano实例,绰绰有余我的需要。 当时没有不正常的活动,通常没有连接到服务器(这是一个适度的个人网站)。 我创build了一个监视Python脚本的服务器来logging这个,并在内存下降时重新启动服务器: 2016-12-08 06:14:30,971 – AWS_Server_Watcher – INFO: Free memory: 280 MB 2016-12-08 06:16:31,096 – AWS_Server_Watcher – INFO: Free memory: 280 MB 2016-12-08 06:18:31,231 – AWS_Server_Watcher – INFO: Free memory: 280 MB 2016-12-08 06:20:31,365 – AWS_Server_Watcher – INFO: Free memory: 280 MB 2016-12-08 06:22:31,499 – AWS_Server_Watcher – INFO: Free memory: 280 MB 2016-12-08 […]

当内存严重不足时自动终止/重启进程

我有一个Debian Wheezy VPS盒子,在生产中运行一对Django应用程序。 理想情况下,将尝试通过优化应用程序,添加更多的RAM或增加Swap来解决我当前的内存占用问题。 但问题是,我怀疑从优化Django应用程序(该堆栈是开源的和强大的),我会牛奶内存优化,添加内存是一个成本约束(我是一个远程VPS),也是,主机不提供使用Swap的选项! 所以,在此期间(当我等待获得更多的资源以支付更多的RAM时),我希望减轻服务器耗尽内存的情况,以便我只需要重新启动VPS(就像在那个时候,我甚至不能SSH进入框!)。 所以,我喜欢的解决scheme是能够检测一个进程(或者一般来说,系统总内存使用情况)是否超过某个临界值(现在,例如FREE RAM降低到10%) – 我已经注意到在VPS长时间运行之后,还有一些重量级应用程序突然出现stream量(大多数情况下只是应用程序的升级)。 所以,我希望能够杀死/重新启动违规程序(最有可能的Apache)。 在这些情况下手动完成哪个解决scheme恢复了理智的内存使用级别 – 暗示可能有一个或多个Django应用程序有内存泄漏? 简单来说: 监视整个系统的RAM使用情况 如果我们从当前的日志分析(使用linux-dash)假设Apache经常是违法者,那么在释放RAM低于给定的临界阈值(例如低于10%)时,杀死/重新启动违规进程 – 或者更简单一些,然后杀死/重新启动它。 冲洗并重复…

Memcached可能泄漏内存

我有一个非常奇怪的问题,我迷失了一下,因为我不知道该怎么做。 我们正在生产4个专用的memcached盒子。 所有的盒子都有48Gb的RAM,它们正在运行memcached,没有别的,守护进程的内存限制被设置为42Gb。 问题是,无论stream量和获取/设置的盒子接收caching将填满其中的所有4个约38GB,但随后的可用RAM的数量将开始缓慢下降的操作系统的过程中几天,直到盒子将开始交换,填补了交换和颠簸! 现在这真的很奇怪,因为没有其他东西在运行,可能会占用RAM的其余部分,而memcached正在吃掉38Gb而没有增长(至less这是图表和统计数据显示的)。 我曾尝试将swappiness设置为0,但没有帮助。 我试图降低caching限制,但我得到了相同的行为。 我正在运行Centos 5.6,2.6.18-238,memcached 1.4.4和libevent-1.4.13-1。 你有没有遇到过类似的问题? memcached可能是内存泄漏,并没有显示在graphics或通常的Linux工具? 谢谢! 担

ES随着时间的推移慢慢堆积起来,挂在14GB,而最大的索引是164MB?

我有一个与Elasticsearch的问题,在某些时候,它试图连续运行GC,因为这是一个无法释放,因为堆大小设置为14GB(最小和最大)被说成是完全分配的: (…) [2014-09-18 13:43:45,984][INFO ][monitor.jvm ] [staging02.onldev] [gc][old][1128185][65590] duration [7.1s], collections [1]/[7.2s], total [7.1s]/[9.3h], memory [13.9gb]->[13.9gb]/[13.9gb], all_pools {[young] [532.5mb]->[532.5mb]/[532.5mb]}{[survivor] [ 49.9mb]->[49.6mb]/[66.5mb]}{[old] [13.3gb]->[13.3gb]/[13.3gb]} [2014-09-18 13:43:53,307][INFO ][monitor.jvm ] [staging02.onldev] [gc][old][1128186][65591] duration [7.2s], collections [1]/[7.3s], total [7.2s]/[9.3h], memory [13.9gb]->[13.9gb]/[13.9gb], all_pools {[young] [532.5mb]->[532.5mb]/[532.5mb]}{[survivor] [ 49.6mb]->[49.7mb]/[66.5mb]}{[old] [13.3gb]->[13.3gb]/[13.3gb]} [2014-09-18 13:43:58,647][INFO ][monitor.jvm ] [staging02.onldev] [gc][old][1128187][65592] duration [5.2s], collections [1]/[5.3s], total [5.2s]/[9.3h], memory […]

非分页“文件”标记中的内存泄漏

我有一个Windows 2012 R2 std。 内存泄漏的服务器。 有些东西告诉我,在安装了Symantic Endpoint保护12.1.5之后,泄漏开始了 – 但是我不确定。 我试图禁用Symantic而不改变内存泄漏。 使用RamMap我可以看到非分页池每天增长〜1GB。 使用Poolmon,我可以看到“文件”标记是非分页池中内存泄漏的原因。 如何进一步debugging? 我好像“文件”是用于未知文件的通用标签? 或者我真的不能search? 任何build议将不胜感激.. 更新:

Xorg在embedded式系统中泄漏内存?

我正在开发一个运行定制Linux平台的embedded式系统,看来Xorg进程正在泄漏内存。 据了解,Xorg的虚拟内存会增长,直到系统崩溃。 根据/ proc / $ pid / status,它的VmPeak会不受控制地增长,但它的VmSize将保持很小。 / proc / $ pid / status的内容如下: Name: Xorg State: S (sleeping) Tgid: 610 Pid: 610 PPid: 605 TracerPid: 0 Uid: 0 0 0 0 Gid: 0 0 0 0 FDSize: 32 Groups: 0 VmPeak: 102628 kB VmSize: 18020 kB VmLck: 0 kB VmPin: 0 kB […]

在ESXI 6.0上丢失内存

我有一个8GB RAM的ESXI 6.0。 出于某种原因,我只能使用4.7GB的虚拟机。 我尝试使用esxtop但没有看到任何使用大量的RAM。 以下是来自vSphere的截图。 任何人都可以帮我理解记忆在哪里? 正如你可以在下面总共有8104 MB的RAM可用,但不知何故5.9GB的消耗。 如果我去资源分配页面,我只有4.7GB RAM用于虚拟机。

Windows Server 2003上的DNSCache内存泄漏

运行一个月左右后,包含DHCP以及DNSCache服务的svchost.exe将在任务pipe理器中显示400M以上的Mem Usage。 我的networking接口都是静态IP,并没有运行DHCP服务器,所以我猜测这个用法来自DNSCache。 有什么理由说这个过程的内存使用率应该这么高? 我仍然有一个免费的内存,但我不想担心,如果我在短时间内需要大量的内存(在这些服务器上发生这种情况),我会用完。 也许svchost足够聪明,让内存回到压力之下,但是我应该指望吗? 从ipconfig /displaydnscaching本身只有大约64个条目,所以它不可能需要所有的RAM可以吗? 编辑:我想添加一个笔记,虽然下面的答案是有用的,它并没有解决我的问题。 我的问题是特定于DNSCache(dns客户端)或DHCP(DHCP客户端)服务。 下面的修补程序是为DNS 服务器内存泄漏。

MaxRequestsPerChild相当于Jboss?

我们有一个运行在Jboss上的应用程序正在泄漏内存,并且有时会导致服务器进入交换和崩溃。 我知道解决这个问题的正确方法是find泄漏的根源,但目前我真的需要一个解决方法。 随着我们的请求数量不断增加,中断的频率也越来越高。 这就是说,你知道是否有一个MaxRequestsPerChild相当于Jboss? 我与IT基础架构一起工作,我不是开发人员,也不是Java专家,所以我不能坐等开发人员修复应用程序(尽pipe我知道他们正在努力这样做),而我的服务器宕机。 顺便说一下,Jboss版本是Jboss AS 4.0.5。

OEL6上未知进程使用的内存 – 没有caching和slabcache

我搜遍了“我的Linux内存在哪里?” 问题,但我找不到类似的泄漏情况: OEL 6.3 x86_64 Linux,配有6GB内存 没有任何我的主要组件运行(2 tomcat,MySQL,基于灰熊的web容器)有大约2.3GB的内存被系统的某个未知部分 几乎没有MB文件caching 几乎没有MB板坯高速caching 即使重新启动后 系统是VMWare上的虚拟主机 这里是RES desc命令的最高输出: top – 15:57:26 up 3:26, 1 user, load average: 0.27, 0.26, 0.76 Tasks: 192 total, 1 running, 191 sleeping, 0 stopped, 0 zombie Cpu(s): 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 5993276k total, 2257256k used, 3736020k free, 23772k buffers Swap: […]