我对我的网络服务器感到非常困难。根据网上的建议,我一直在调整事情,但却找不到任何具体的东西。
当我执行htop时,我的Apache进程正在消耗虚拟内存列下的450 My。我在互联网上搜索,人们说,安装电子加速器,系统将变得更快和高效,将消耗较少的内存和CPU。不幸的是,事实证明这比以前更糟了。现在,我的apache进程在Virtual列下显示1488 my内存。
请在htop的截图下面找到。
FYI -它是一台专用服务器,有8个核心CPU.
在我的服务器启动并运行之前,我的站点性能是很好的。它第一次加载大约8秒,第二次显示为2.5秒。该网站的形象沉重,因为它是一个电子商务网站。

发布于 2011-09-08 09:11:56
Unix系统如何使用内存是一个漫长而复杂的故事。将每个进程的虚拟大小相加并不能准确地显示正在发生的事情。一个更好的方法是跟踪httpd进程的数量和可用内存(较少的缓冲区/缓存),这是由“free”报告的。然后把这些画在一个图表上,得到一个更真实的度量。
虽然在您的情况下,这是有点复杂的清漆运行,它仍然将给您一个很好的指示,需求如何影响内存。
您没有提供任何关于如何配置对内存使用和性能有很大影响的KeepAlives的信息。您也没有提供任何关于服务器上活动模式的信息-- httpd进程的数量在整个周期中是如何变化的?在不知道这一点的情况下,不可能评论您提供的conf细节有多合适。但是,除非您怀疑代码存在很大的问题,否则MaxRequestsPerChild非常低。
另外,在不了解内容类型的相对数量的情况下,很难说什么会有帮助--例如,如果您提供了大量的静态CSS、JS和HTML,那么您将从使用压缩中获得很多好处。
8GB和18 and?Big是构建可伸缩way服务器架构的错误方法。
我的网站表现很好。它第一次加载大约8秒,第二次查看为2.5秒
我想我们对“优秀”这个词有不同的解释。
虽然我怀疑这里需要进行大量的调优和重构(特别是从您在问题中没有提供的所有信息来判断),但最终您只需要添加更多的硬件。在此期间,你可能想买些帮助。
发布于 2011-09-08 07:12:33
如果你想减少内存的使用,你真的不应该使用预叉,而应该使用工作线程。正如它的名称所暗示的那样,Pre叉实际上每次都启动一个新的进程,它有自己的内存空间和不需要的内容。
因此,请将apache改为使用worker mpm。这应该会有一点帮助。
也就是说,如果您有18 7GB的RAM,那么使用7GB的apache有什么问题呢?你还有很多别的事要做。
也许你可以进一步解释,你想要实现什么。
发布于 2011-09-08 05:15:01
虚拟内存是它的名字。查看RES列以了解实际的内存使用情况。
有关详细信息,请参阅man top,特别是DESCRIPTIONS of Fields部分。
https://serverfault.com/questions/309263
复制相似问题