жор памяти Apache

skyscr
На сайте с 26.01.2010
Offline
68
2968

В общем ситуация такая,

есть VPS 2gg 2шт х 512ram x 5gb

на нем стоит Debian 5+webmin+lamp+proftp+postfix+memcache и куча ненужного мне барахла...

и есть второй такойже VPS с 1 процем,

на нем ставлю Ubuntu 10.04lts+webmin+lamp+nginx+memcache+proftp+postfix

апач настроен там и там одинаково,

теперь смотрю процессы и наблюдаю, что работающий апач на Debian жрет 30mb, а на Ubuntu 70:gm:

Debian 5:
PID Владелец Размер Команда
29928 mysql 147660 kB /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --user=mysql --pid-file ...
20187 www-data 38732 kB /usr/bin/php5-cgi
30145 www-data 37696 kB /usr/bin/php5-cgi
20162 www-data 32260 kB /usr/bin/php5-cgi
32428 www-data 30248 kB /usr/sbin/apache2 -k start
32429 www-data 30244 kB /usr/sbin/apache2 -k start
23577 www-data 30224 kB /usr/sbin/apache2 -k start
3835 www-data 29704 kB /usr/sbin/apache2 -k start
3838 www-data 29704 kB /usr/sbin/apache2 -k start
3346 root 29192 kB /usr/sbin/apache2 -k start
3347 www-data 23188 kB /usr/sbin/apache2 -k start
3460 root 18360 kB /usr/bin/python ajaxterm.py --port 11112 --log
3973 root 14252 kB /usr/share/webmin/proc/index_size.cgi
3465 root 13828 kB /usr/share/webmin/ajaxterm/index.cgi
18175 root 9564 kB /usr/bin/perl /usr/share/webmin/miniserv.pl /etc/webmin/miniserv.conf
23915 root 9416 kB dovecot-auth
1339 postfix 5856 kB tlsmgr -l -t unix -u -c
17717 postfix 5532 kB qmgr -l -t fifo -u
16008 postfix 5488 kB pickup -l -t fifo -u -c
11347 root 5476 kB /usr/lib/postfix/master
27968 root 5272 kB /usr/sbin/sshd
23925 dovecot 3504 kB imap-login
23926 dovecot 3504 kB imap-login
23927 dovecot 3504 kB imap-login
23922 dovecot 3500 kB pop3-login
23923 dovecot 3500 kB pop3-login
23924 dovecot 3500 kB pop3-login
29881 root 2708 kB /bin/sh /usr/bin/mysqld_safe
5341 root 2664 kB sh -c ps --cols 2048 -eo user:80,ruser:80,group:80,rgroup:80,pid,ppid,pgid,pcpu, ...
5342 root 2296 kB ps --cols 2048 -eo user:80,ruser:80,group:80,rgroup:80,pid,ppid,pgid,pcpu,vsz,ni ...
23913 root 2000 kB /usr/sbin/dovecot
1 root 1980 kB init [2]
29929 root 1628 kB logger -p daemon.err -t mysqld_safe -i -t mysqld
Ubuntu 10.04:
PID Владелец Размер Команда
7809 mysql 147012 kB /usr/sbin/mysqld
32549 www-data 70244 kB /usr/sbin/apache2 -k start
7985 www-data 70180 kB /usr/sbin/apache2 -k start
7995 www-data 69856 kB /usr/sbin/apache2 -k start
7991 www-data 69668 kB /usr/sbin/apache2 -k start
9287 www-data 68268 kB /usr/sbin/apache2 -k start
32546 root 67780 kB /usr/sbin/apache2 -k start
32619 nobody 43776 kB /usr/bin/memcached -m 64 -p 11211 -u nobody -l 127.0.0.1
9782 root 15016 kB /usr/share/webmin/proc/index_size.cgi
9701 root 13296 kB /usr/bin/perl /usr/share/webmin/miniserv.pl /etc/webmin/miniserv.conf
5200 root 8480 kB sshd: root@ttyp0
7544 root 8404 kB sshd: root@ttyp1
5994 root 5468 kB /usr/sbin/sshd
3833 nobody 5040 kB proftpd: (accepting connections)
32580 www-data 4868 kB nginx: worker process
32579 root 4732 kB nginx: master process /usr/sbin/nginx
7574 root 2988 kB -bash
5263 root 2980 kB -bash
1 root 2464 kB init
9785 root 2360 kB ps --cols 2048 -eo user:80,ruser:80,group:80,rgroup:80,pid,ppid,pgid,pcpu,vsz,ni ...
5815 root 2300 kB cron
5874 syslog 1912 kB /sbin/syslogd -u syslog
3403 root 1884 kB /usr/sbin/inetd
9784 root 1756 kB sh -c ps --cols 2048 -eo user:80,ruser:80,group:80,rgroup:80,pid,ppid,pgid,pcpu, ...
N
На сайте с 06.05.2007
Offline
419
#1

Значит не одинаково настроен. в debian есть /usr/bin/php5-cgi

дальше объяснять?

Кнопка вызова админа ()
M
На сайте с 01.12.2009
Offline
235
#2

Потёр сории =)

Администратор Linux,Freebsd. построения крупных проектов.
skyscr
На сайте с 26.01.2010
Offline
68
#3

да, поясните в чём косяк, поучусь =)

N
На сайте с 06.05.2007
Offline
419
#4

skyscr, это не косяк, а другой способ запуска php.

php-cgi - отдельный процесс, а в случае с ubuntu скорее всего используется модуль apache mod_php встроенный прямо в процесс apache. Память, которую якобы жрет apache, это память для интерпретатора php.

skyscr
На сайте с 26.01.2010
Offline
68
#5

спасибо, надо ставить...

ещё вопрос к знающим: залил сайт в /var/www/domain/ , но почему-то вместо главной страницы пишет меню в виде "а�аОаНб�аА", а захожу в админку и там всё нормально работает... где копать?

настройки делал примерно как здесь

skyscr добавил 05.10.2010 в 22:52

поставил fast-cgi

лучше не стало, наоборот... =(

8158 mysql 147468 kB /usr/sbin/mysqld
15870 www-data 68108 kB /usr/sbin/apache2 -k start
15865 root 67752 kB /usr/sbin/apache2 -k start
5954 www-data 60976 kB /usr/bin/php5-cgi
5955 www-data 52780 kB /usr/bin/php5-cgi
5957 www-data 52780 kB /usr/bin/php5-cgi
5956 www-data 52520 kB /usr/bin/php5-cgi
5960 www-data 52348 kB /usr/bin/php5-cgi
5953 www-data 51828 kB /usr/bin/php5-cgi
5961 www-data 50972 kB /usr/bin/php5-cgi
5959 www-data 50724 kB /usr/bin/php5-cgi
5958 www-data 50564 kB /usr/bin/php5-cgi
5952 www-data 49560 kB /usr/bin/php5-cgi
5950 www-data 46248 kB /usr/bin/php5-cgi
32619 nobody 43776 kB /usr/bin/memcached -m 64 -p 11211 -u nobody -l 127.0.0.1
17450 root 14996 kB /usr/share/webmin/proc/index_size.cgi
9701 root 13408 kB /usr/bin/perl /usr/share/webmin/miniserv.pl /etc/webmin/miniserv.conf
10210 root 8404 kB sshd: root@ttyp3
5994 root 5468 kB /usr/sbin/sshd
15812 www-data 5248 kB nginx: worker process
24483 nobody 5032 kB proftpd: (accepting connections)
15811 root 4732 kB nginx: master process /usr/sbin/nginx
10232 root 2988 kB -bash
1 root 2464 kB init
17453 root 2360 kB ps --cols 2048 -eo user:80,ruser:80,group:80,rgroup:80,pid,ppid,pgid,pcpu,vsz,ni ...
5815 root 2300 kB cron
5874 syslog 1912 kB /sbin/syslogd -u syslog
3403 root 1884 kB /usr/sbin/inetd
17452 root 1756 kB sh -c ps --cols 2048 -eo user:80,ruser:80,group:80,rgroup:80,pid,ppid,pgid,pcpu, ...
LM
На сайте с 18.10.2009
Offline
117
#6
skyscr:
но почему-то вместо главной страницы пишет меню в виде "а�аОаНб�аА", а захожу в админку и там всё нормально работает... где копать?

AddDefaultCharset UTF-8 в конфиг апача. (/etc/apache2/conf.d/charset)

V
На сайте с 25.07.2006
Offline
128
#7
skyscr:
поставил fast-cgi лучше не стало, наоборот... =(

Это таки лучше :)

Вы можете точно задать количество процессов. Вряд ли вам их нужно более десятка, а скорее всего хватит буквально нескольких. Поэкспериментируйте.

Приватный linux-администратор
N
На сайте с 06.05.2007
Offline
419
#8

Того же самого эффекта можно добиться регулируя число apache и обрабатывая статические файлы через nginx.

И, похоже, mod_php все равно обрабатывает файлы, раз размер апачей около 68 mb.

VO
На сайте с 27.07.2008
Offline
149
#9

skyscr, на обоих VPS ось 32 битная ?

skyscr
На сайте с 26.01.2010
Offline
68
#10

спасибо за подсказки,

AddDefaultCharset UTF-8 не помог, думаю что-то или с htaccess, может не подключена библиотека какая, дело в том что index показывает только меню "а�а..." и белую страницу с html,

получается не грузятся скрипты и магазин virtuemart... в админку заходит, а в админку-магазина опять не заходит, попробую заново установить, но база нужна... может косяк в базе, уже не знаю что смотреть, смотрю всё =)

вот error лог apache2

[Wed Oct 06 11:16:06 2010] [notice] Graceful restart requested, doing restart
[Wed Oct 06 11:16:06 2010] [error] (9)Bad file descriptor: apr_socket_accept: (client socket)
PHP Deprecated: Comments starting with '#' are deprecated in /etc/php5/apache2/conf.d/idn.ini on line 1 in Unknown on line 0
PHP Deprecated: Comments starting with '#' are deprecated in /etc/php5/apache2/conf.d/imagick.ini on line 1 in Unknown on line 0
PHP Deprecated: Comments starting with '#' are deprecated in /etc/php5/apache2/conf.d/imap.ini on line 1 in Unknown on line 0
PHP Deprecated: Comments starting with '#' are deprecated in /etc/php5/apache2/conf.d/mcrypt.ini on line 1 in Unknown on line 0
PHP Deprecated: Comments starting with '#' are deprecated in /etc/php5/apache2/conf.d/ming.ini on line 1 in Unknown on line 0
[Wed Oct 06 11:16:06 2010] [notice] Apache/2.2.14 (Ubuntu) PHP/5.3.2-1ubuntu4.5 with Suhosin-Patch mod_ruby/1.2.6 Ruby/1.8.7(2010-01-10) mod_ssl/2.2.14 OpenSSL/0.9.8k configured -- resuming normal operations

а вот лог nginx:

2010/10/06 11:51:23 [error] 12122#0: *74 open() "/var/www/mydom.en/js/swfobject/swfobject.js" failed (2: No such file or directory), client: 1.1.1.255, server: mydom.en, request: "GET /js/swfobject/swfobject.js HTTP/1.1", host: "mydom.en", referrer: "http://mydom.en/"
2010/10/06 11:51:23 [error] 12122#0: *76 open() "/var/www/mydom.en/vkontakte.jpg" failed (2: No such file or directory), client: 1.1.1.255, server: mydom.en, request: "GET /vkontakte.jpg HTTP/1.1", host: "mydom.en", referrer: "http://mydom.en/"

skyscr добавил 06.10.2010 в 12:28

да на обоих 32, оперативы всего 512

skyscr добавил 06.10.2010 в 17:40

подскажите знающие, как же ограничить php5-cgi процессы,

пробую

добавить в /etc/apache2/mods-enabled/fcgid.conf
<IfModule mod_fcgid.c>
AddHandler fcgid-script .fcgi
IPCConnectTimeout 120
IPCCommTimeout 120
DefaultMaxClassProcessCount 5
</IfModule>

или DefaultMaxClassProcessCount в конфиги apache пихаю, всё-равно...

skyscr добавил 06.10.2010 в 17:48

вот конфиг apache2/sites-enabled/mysite.in.conf

<VirtualHost *:81>

ServerAdmin webmaster@mysite.in

DocumentRoot /var/www/mysite.in
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
<Directory /var/www/mysite.in>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>

ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride All
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>

ErrorLog /var/log/apache2/error.log

# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn

CustomLog /var/log/apache2/access.log combined

Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
Options Indexes MultiViews FollowSymLinks
AllowOverride All
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>

</VirtualHost>

а вот apache2/sites-available/default

<VirtualHost *:81>

ServerAdmin webmaster@mysite.in

DocumentRoot /var/www/mysite.in
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>

ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride All
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>

ErrorLog /var/log/apache2/error.log

# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn

CustomLog /var/log/apache2/access.log combined

Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
Options Indexes MultiViews FollowSymLinks
AllowOverride All
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>

</VirtualHost>

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий