首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Centos5中的内存泄漏问题

Centos5中的内存泄漏问题
EN

Server Fault用户
提问于 2010-09-26 23:01:02
回答 2查看 809关注 0票数 3

我最近刚买了一台专用服务器,作为一个小型社区网站的升级,这是我们在过去3年中共享的主机。我已经安装了httpd、php和mysql (通常用于had服务器)。我为一些虚拟主机配置了httpd,并安装了webmin和仙人掌。所有的事情看起来都很顺利,直到我注意到图表中有一些东西是为了在仙人掌中使用内存。

我的服务器有2GIGRAM,由于某种原因,其中1.7G的内存正在使用。我以root身份通过SSH登录,重新启动服务器,然后运行“top”。很快,它就猛增到使用了600 slowly,并且一直在缓慢地增长,但它看上去并没有使用任何内存。我查过“ps辅警”。但是由于一些奇怪的原因,看起来似乎没有运行的应用程序使用超过2%的ram。如果我把“ps aux”中的所有mem使用量加在一起,就会得出大约20.6%的结果,我假设它接近400 mem,这是在使用800 mem的时候。

所以,在我看来,似乎有大约400 me的ram被使用在没有应用程序声称它的地方。随着时间的推移,内存慢慢上升,直到它使用所有可用的RAM。不过,我还没说到那个地步。

我不太清楚下一步该怎么做才能纠正这个问题。任何帮助都将不胜感激。

来自仙人掌的内存使用图:

‘ps aux’和‘free和’输出

如果还需要更多的信息,请告诉我。

EN

回答 2

Server Fault用户

回答已采纳

发布于 2010-09-27 00:28:31

首先,检查这个页面:Linux吃了我的内存

您还没有描述过任何显示内存泄漏的行为,至少没有一个是我可以理解的。如前所述,内核将使用空闲RAM作为磁盘读取缓存。作为缓存分配的字节将由内核立即释放给任何需要它的应用程序。

尝试运行free而不是-o。在执行此操作时,将为您提供可用的RAM值,同时考虑到当前用于缓存的内容。下面是来自我的服务器的一些示例输出:

代码语言:javascript
复制
user@host:~$ free
             total       used       free     shared    buffers     cached
Mem:        510652     430976      79676          0     134520     156876
-/+ buffers/cache:     139580     371072
Swap:       262136      40796     221340

看到-/+ buffers/cache线了吗?free列中的值反映了应用程序可以使用的内存的实际数量。

票数 6
EN

Server Fault用户

发布于 2011-02-03 01:51:20

这是我的配置:

IBM M3,双四核,8GB内存,CentOS 5 x86_64。

我们正在运行一个应用程序,它需要将数据保存在向量中,然后将其放到数据库中。运行应用程序几天后,我们运行了顶级程序,发现内存使用是99%+。这看起来很奇怪,我认为CentOS 5可能正在使用某种类型的内存缓存,但我们可以看到服务器性能明显下降。

所以我决定跑得更深。我们并排运行了两个终端窗口,以见证任何瓶颈的证据。在一个窗口中,我们打印数据的速度/秒,我们的应用程序接收数据,而在另一个窗口,我们运行一个tcpdump跟踪的特定端口。

我们发现网卡正在以极高的速度运行,并且能够很好地处理这些数据。但是内核无法将这些数据提供给我的应用程序。数据将保持在一个网络队列中,每6-10秒,应用程序将收到大量数据,然后再次下降。

解决方案:嗯,我没有任何关于分款OS 5的东西。但是我们把操作系统换成了Fedora 14 x86_64。内存利用率低于1%,内核能够以极高的速度处理数据,而无需排队。这就是我所拥有的,我不知道为什么CentOS不支持这种硬件架构。我们的另一个CentOS安装工作正常。但是当我们选择一种双核架构时,我们碰到了这堵砖墙。

希望这能有所帮助。

谢谢

侧边

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/184868

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档