我管理两台专用服务器。我使用带有 Plesk Panel 的 Centos 6。更新:我使用带有 mod_php 的 Apache。
在第一台服务器上我有一个 Wordpress 网站。
我注意到我的 httpd 进程每次都占用更多内存。除了使用“top”命令,我还使用以下命令来查找:
ps -ylC httpd --sort:rss
图像:
注意RSS栏,httpd进程占用了13MB到127MB的内存。
已安装的 Apache 模块有:
# Httpd l
Compiled in modules:
core.c
prefork.c
http_core.c
mod_so.c
在第二台服务器上我有一个网站 PHPBB。
本例中涉及的进程如httpd,全部占用约85MB。
图像:
我读到应该占用 20MB。我该如何分析或优化它?用什么工具?我试过 Xhprof,但它说使用的内存小于这个值,然后使用真的......
我的服务器内存占用很大。这是一个大问题。
更新:
服务器 1 Meminfo 输出:
#cat /proc/meminfo
MemTotal: 5969120 kB
MemFree: 625720 kB
Buffers: 218424 kB
Cached: 3289320 kB
SwapCached: 61020 kB
Active: 2832624 kB
Inactive: 2066428 kB
Active(anon): 1111532 kB
Inactive(anon): 343184 kB
Active(file): 1721092 kB
Inactive(file): 1723244 kB
Unevictable: 0 kB
Mlocked: 0 kB
SwapTotal: 1959920 kB
SwapFree: 1789764 kB
Dirty: 1044 kB
Writeback: 0 kB
AnonPages: 1348048 kB
Mapped: 53712 kB
Shmem: 63408 kB
Slab: 379972 kB
SReclaimable: 220388 kB
SUnreclaim: 159584 kB
KernelStack: 2064 kB
PageTables: 28848 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 4944480 kB
Committed_AS: 3148736 kB
VmallocTotal: 34359738367 kB
VmallocUsed: 24764 kB
VmallocChunk: 34359713428 kB
HardwareCorrupted: 0 kB
AnonHugePages: 0 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
DirectMap4k: 6291456 kB
DirectMap2M: 0 kB
服务器 1 占用内存最多的 httpd 进程的 pmap(127mb 和 118mb):
# pmap 11737
11737: /usr/sbin/httpd
total 0K
# pmap 12099
12099: /usr/sbin/httpd
total 0K
服务器 2 Meminfo 输出:
# cat /proc/meminfo
MemTotal: 10088968 kB
MemFree: 1773488 kB
Buffers: 237064 kB
Cached: 5752804 kB
SwapCached: 38764 kB
Active: 4516332 kB
Inactive: 2738344 kB
Active(anon): 1028388 kB
Inactive(anon): 267156 kB
Active(file): 3487944 kB
Inactive(file): 2471188 kB
Unevictable: 0 kB
Mlocked: 0 kB
SwapTotal: 1959920 kB
SwapFree: 1883656 kB
Dirty: 4444 kB
Writeback: 0 kB
AnonPages: 1226476 kB
Mapped: 37020 kB
Shmem: 30736 kB
Slab: 862964 kB
SReclaimable: 762056 kB
SUnreclaim: 100908 kB
KernelStack: 2424 kB
PageTables: 57564 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 7004404 kB
Committed_AS: 2753212 kB
VmallocTotal: 34359738367 kB
VmallocUsed: 42048 kB
VmallocChunk: 34359642628 kB
HardwareCorrupted: 0 kB
AnonHugePages: 0 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
DirectMap4k: 10485760 kB
DirectMap2M: 0 kB
服务器2 httpd pmap:
# pmap 29772
29772: /usr/sbin/httpd
total 0K
答案1
您使用的是mod_php
,因此 Apache 也同时处理您的 PHP 工作负载。由于 PHP 需要大量 RAM(嗯,大多数 PHP 都需要,包括mod_perl
),因此您会发现 RAM 使用量比仅提供静态文件更高。