如何知道apache2服务器的内存泄漏在哪里

如何知道apache2服务器的内存泄漏在哪里

我有一个 apache2 服务器,最近似乎有内存泄漏。我以前用mod_wsgiPython 编写服务器 WEB 服务。起初我以为是我的 python 程序泄漏了内存。但是top执行命令后,我找不到任何泄漏内存的进程。这是我的top命令。使用了 128 GB 内存。但 apache2 进程仅使用 14.1 GB 内存,我找不到任何其他使用如此大内存的进程。如何找到它?

top - 16:33:01 up 2 days, 22:20,  1 user,  load average: 0.07, 0.03, 0.05
Tasks: 1975 total,   1 running, 1974 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.1%us,  0.1%sy,  0.0%ni, 99.8%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:  131987724k total, 131571384k used,   416340k free,    11068k buffers
Swap:   999420k total,   998324k used,     1096k free,    67008k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                                                                                                   
30188 www-data  20   0 14.1g  31m    0 S    4  0.0   5:41.80 apache2                                                                                                                                                                   
31972 root      20   0 18844 2820  960 R    1  0.0   0:00.09 top                                                                                                                                                                       
    1 root      20   0 24348  820   56 S    0  0.0   0:02.21 init                                                                                                                                                                      
    2 root      20   0     0    0    0 S    0  0.0   0:00.33 kthreadd                                                                                                                                                                  
    3 root      20   0     0    0    0 S    0  0.0   0:00.67 ksoftirqd/0                                                                                                                                                               
    4 root      20   0     0    0    0 S    0  0.0   0:34.55 kworker/0:0                                                                                                                                                               
    5 root       0 -20     0    0    0 S    0  0.0   0:00.00 kworker/0:0H                                                                                                                                                              
    6 root      20   0     0    0    0 S    0  0.0   0:00.00 kworker/u96:0                                                                                                                                                             
    8 root      RT   0     0    0    0 S    0  0.0   0:00.58 migration/0                                                                                                                                                               
    9 root      20   0     0    0    0 S    0  0.0   0:00.00 rcu_bh                                                                                                                                                                    
   10 root      20   0     0    0    0 S    0  0.0   0:00.00 rcuob/0                                                                                                                                                                   
   11 root      20   0     0    0    0 S    0  0.0   0:00.00 rcuob/1                                                                                                                                                                   
   12 root      20   0     0    0    0 S    0  0.0   0:00.00 rcuob/2                                                                                                                                                                   
   13 root      20   0     0    0    0 S    0  0.0   0:00.00 rcuob/3                                                                                                                                                                   
   14 root      20   0     0    0    0 S    0  0.0   0:00.00 rcuob/4                                                                                                                                                                   
   15 root      20   0     0    0    0 S    0  0.0   0:00.00 rcuob/5                                                                                                                                                                   
   16 root      20   0     0    0    0 S    0  0.0   0:00.00 rcuob/6                                                                                                                                                                   
   17 root      20   0     0    0    0 S    0  0.0   0:00.00 rcuob/7                                                                                                                                                                   
   18 root      20   0     0    0    0 S    0  0.0   0:00.00 rcuob/8                                                                                                                                                                   
   19 root      20   0     0    0    0 S    0  0.0   0:00.00 rcuob/9                                                                                                                                                                   
   20 root      20   0     0    0    0 S    0  0.0   0:00.00 rcuob/10                                                                                                                                                                  
   21 root      20   0     0    0    0 S    0  0.0   0:00.00 rcuob/11   

答案1

不要担心,它只是来自 Linux 的文件缓存,它与 Apache 没有直接联系:

http://www.linuxatemyram.com/

Linux 正在缓存文件,这样您可以直接从内存而不是硬盘访问它们,从而大大提高性能。

在 Debian 6 和 7 上,我的内存始终用于缓存,在 Debian 8 中,他们似乎减少了缓存大小,因此仍然有可用的 RAM。

相关内容