URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID8
Нить номер: 5895
[ Назад ]

Исходное сообщение
"apache2"

Отправлено ZLOFENIX , 25-Июл-08 22:14 
суть проблемы: есть сайт с приличным кол-вом народу сидящим разом на 1й части (400-600 человек разом), все живет на апаче 2, система сусе 10.3
2 варианта:
1. если апач стоит prefork то иногда всего процессы жрут максимум проца(стоит 4х головый феном(не коментим это), 2 гига памяти)(в логе пусто по этому поводу), около 19% по top, так же лагает даже консоль в ssh
<IfModule prefork.c>
        StartServers         100
        MinSpareServers      10
        MaxSpareServers     600
        ServerLimit        800
        MaxClients         800
        MaxRequestsPerChild  10000
</IfModule>

но в этом случае база и проц в не так сильно нагружаются как во 2м варианте, нагруз на проц в рабочем виде 10-20%

2. если апач worker и php как fastcgi то иногда пропадают все процессы php, в логе:
[alert] (10)No child processes: FastCGI: read() from pipe failed (0)
[alert] (10)No child processes: FastCGI: the PM is shutting down, Apache seems to have disappeared - bye
при этом сам апач пашет нормально

конфиг воркера:
<IfModule worker.c>
        ServerLimit         64
        StartServers        16
        MinSpareThreads     25
        MaxSpareThreads     96
        ThreadLimit         96
        MaxClients          768
        ThreadsPerChild     32
        MaxRequestsPerChild  10000
</IfModule>

конфиг mod_fastcgi:
<IfModule !mod_fastcgi.c>
        <Directory "/srv/www/fcgi-bin">
                AllowOverride None
                Options None
                Order allow,deny
                Deny from all
        </Directory>
</IfModule>

<IfModule mod_fastcgi.c>
        FastCgiIpcDir /var/lib/apache2/fastcgi
        <Directory "/srv/www/fcgi-bin">
                AllowOverride None
                Options +ExecCGI -Includes FollowSymLinks
                SetHandler fastcgi-script
                Order allow,deny
                Allow from all
        </Directory>
        Alias /fcgi-bin/ /srv/www/fcgi-bin/
        FastCgiConfig -maxProcesses 256 -restart
        FastCgiServer /srv/www/fcgi-bin/php5 -processes 64
        AddType application/x-httpd-fastphp .php
        Action application/x-httpd-fastphp /fcgi-bin/php5
        DirectoryIndex index.html index.htm index.php
</IfModule>

/srv/www/fcgi-bin/php5 симлинк на /usr/bin/php5

кто что может посоветовать, чтобы апач перестал падать :) ?


Содержание

Сообщения в этом обсуждении
"apache2"
Отправлено mirya , 30-Июл-08 18:01 
какой резон пхп как FastCGI? Т.е. worker + mod_php5 никогда нареканий не вызывает

"apache2"
Отправлено ZLOFENIX , 31-Июл-08 14:10 
>какой резон пхп как FastCGI? Т.е. worker + mod_php5 никогда нареканий не
>вызывает

расскажи как плиз
в виде пакета, мод пхп упорно требует префорк


"apache2"
Отправлено mephius , 31-Июл-08 11:38 
>[оверквотинг удален]
>
>        AddType application/x-httpd-fastphp .php
>        Action application/x-httpd-fastphp /fcgi-bin/php5
>        DirectoryIndex index.html index.htm index.php
>
></IfModule>
>
>/srv/www/fcgi-bin/php5 симлинк на /usr/bin/php5
>
>кто что может посоветовать, чтобы апач перестал падать :) ?

Если стоит opcode кешер какой-нить, то fastcgi может падать из-за сегментации и краша opcode кеша. Кроме того у дефолтного php каждый fastcgi процесс имеет собственный opcode кеш. У меня давно и стабильно работают проекты с высокой нагрузкой под nginx + php-fpm, т.е. совсем без апача. fpm сам умеет восстанавливаться, если вдруг сломался opcode кэш. При этом он даже не теряет реквестов.


"apache2"
Отправлено ZLOFENIX , 31-Июл-08 14:11 
>Если стоит opcode кешер какой-нить, то fastcgi может падать из-за сегментации и
>краша opcode кеша. Кроме того у дефолтного php каждый fastcgi процесс
>имеет собственный opcode кеш. У меня давно и стабильно работают проекты
>с высокой нагрузкой под nginx + php-fpm, т.е. совсем без апача.
>fpm сам умеет восстанавливаться, если вдруг сломался opcode кэш. При этом
>он даже не теряет реквестов.

стоить только eaccelerator


"apache2"
Отправлено mephius , 31-Июл-08 14:23 
>>Если стоит opcode кешер какой-нить, то fastcgi может падать из-за сегментации и
>>краша opcode кеша. Кроме того у дефолтного php каждый fastcgi процесс
>>имеет собственный opcode кеш. У меня давно и стабильно работают проекты
>>с высокой нагрузкой под nginx + php-fpm, т.е. совсем без апача.
>>fpm сам умеет восстанавливаться, если вдруг сломался opcode кэш. При этом
>>он даже не теряет реквестов.
>
>стоить только eaccelerator

eaccelerator и есть одна из реализаций opcode кешеров. Читаем:

>eAccelerator is a free open-source PHP accelerator, optimizer, and dynamic content cache.
>It increases the performance of PHP scripts by caching them in their compiled state...

compiled state для php скрипта это и есть его опкоды.