web-dev-qa-db-ja.com

HTTPDプロセスでメモリRAMが高すぎる

私は2つの専用サーバーを管理しています。 PleskPanelでCentos6を使用しています。 更新:私はmod_phpでApacheを使用しています。

最初のサーバーには、Wordpressにサイトがあります。

Httpdプロセスが毎回より多くのメモリを消費することに気づきました。 'top'コマンドの他に、次のコマンドを使用して調べます。

ps -ylC httpd --sort:rss

画像:

enter image description here

RSS列に注意してください。 13MBから127MBまでのhttpdプロセスはRAMを占有します。

インストールされているApacheモジュールは次のとおりです。

# Httpd l 
Compiled in modules: 
   core.c 
   prefork.c 
   http_core.c 
   mod_so.c 

2番目のサーバーには、ウェブサイトPHPBBがあります。

この場合、httpdのような関連するプロセス。すべて約85MBを占めます。

画像:

enter image description here

私はそれが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

Httpdのほとんどのメモリプロセス(127mbおよび118mb)のサーバー1 pmap:

# 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

サーバー2httpd pmap:

# pmap 29772
29772:   /usr/sbin/httpd
 total                0K
1
Cookboy

mod_phpを使用しているため、ApacheはPHPワークロードも同時に処理します。 PHPには多くのRAMが必要なため(mod_Perlを含め、これとほとんど同じです)、単に提供するよりもRAMの使用量が多くなります。静的ファイル。

5
Nathan C