* [Sysadmins] php-5.3.3 + fpm + nginx
@ 2010-09-20 17:53 ddv
2010-09-20 19:36 ` Anton Farygin
0 siblings, 1 reply; 8+ messages in thread
From: ddv @ 2010-09-20 17:53 UTC (permalink / raw)
To: sysadmins
Вечер добрый!
Моя попытка заюзать php-5.3.3... На примере одно джумла сайта..
давно хотел перейти на сабж, но всё ждал php-5.3.3.. код на сайтах всех
переписал... все сайты работают, но на apache2 + mod_php
А вот сабж почти не работает.
вот такое в лог nginx падает:
2010/09/20 23:25:21 [error] 19630#0: *341 FastCGI sent in stderr: "PHP
Notice: Trying to get property of non-object in
/var/www/mydomain.ru/plugins/system/xajax.php on line 57" while reading
response header from upstream, client: 94.50.5.244, server: mydomain.ru,
request: "GET /administrator/ HTTP/1.1", upstream:
"fastcgi://127.0.0.1:9000", host: "mydomain.ru"
Конфиг nginx:
server {
listen 80;
server_name mydomain.ru www.mydomain.ru;
access_log /var/log/nginx/mydomain.ru-access.log;
error_log /var/log/nginx/mydomain.ru-error.log;
large_client_header_buffers 4 8k;
root /var/www/mydomain.ru;
index index.php;
gzip on;
gzip_types text/plain text/css application/x-javascript text/xml
application/xml application/rss+xml text/javascript image/x-icon;
gzip_min_length 1000;
gzip_comp_level 9;
gzip_http_version 1.0;
gzip_vary on;
gzip_proxied expired no-cache no-store private auth;
gzip_disable msie6;
location / {
rewrite "^/administrator"
https://mydomain.ru/administrator last;
expires 30d;
error_page 404 = @joomla;
log_not_found off;
}
location @joomla {
rewrite ^(.*)$ /index.php?q=$1 last;
}
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include /etc/nginx/fastcgi_params;
fastcgi_param SCRIPT_FILENAME
$document_root$fastcgi_script_name;
}
location ~* \.(css|js) {
gzip_static on;
gzip_disable Firefox/([0-2]\.|3\.0);
gzip_disable Chrome/2;
gzip_disable Safari;
gzip_disable Konqueror;
}
}
server {
listen 443;
server_name mydomain.ru www.mydomain.ru;
keepalive_timeout 70;
access_log /var/log/nginx/mydomain.ru-access.log;
error_log /var/log/nginx/mydomain.ru-error.log;
large_client_header_buffers 4 8k;
root /var/www/mydomain.ru;
index index.php;
gzip on;
gzip_types text/plain text/css application/x-javascript text/xml
application/xml application/rss+xml text/javascript image/x-icon;
gzip_min_length 1000;
gzip_comp_level 9;
gzip_http_version 1.0;
gzip_vary on;
gzip_proxied expired no-cache no-store private auth;
gzip_disable msie6;
location / {
expires 30d;
error_page 404 = @joomla;
log_not_found off;
}
location @joomla {
rewrite ^(.*)$ /index.php?q=$1 last;
}
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include /etc/nginx/fastcgi_params;
fastcgi_param SCRIPT_FILENAME
$document_root$fastcgi_script_name;
}
location ~* \.(css|js) {
# разрешаем отдавать вместо несжатого файла,
предварительно # сжатый с постфиксом «.gz», если такой есть
gzip_static on;
# запрещаем сжатие файлов CSS и JS для проблемных
браузеров
gzip_disable Firefox/([0-2]\.|3\.0);
gzip_disable Chrome/2;
gzip_disable Safari;
gzip_disable Konqueror;
}
ssl on;
ssl_protocols SSLv3 TLSv1;
ssl_ciphers
AES128-SHA:AES256-SHA:RC4-SHA:DES-CBC3-SHA:RC4-MD5;
ssl_certificate /etc/httpd2/conf/ssl/keys/mydomain.ru.crt;
ssl_certificate_key /etc/httpd2/conf/ssl/keys/mydomain.ru.key;
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 10m;
}
Конфиг fpm:
cat /etc/fpm/fpm.d/joomla.conf
[joomla]
listen = 127.0.0.1:9000
listen.allowed_clients = 127.0.0.1
user = apache2
group = apache2
pm = dynamic
pm.max_children = 15
pm.start_servers = 1
pm.min_spare_servers = 1
pm.max_spare_servers = 15
slowlog = /var/log/php5-fpm/joomla.slow.log
catch_workers_output = yes
php_admin_value[error_log] = /var/log/php-fpm/joomla.err.log
php_admin_flag[log_errors] = on
php_admin_value[upload_max_filesize] = 100M
Страница открывается долго, 20 секунд, висит 5 процессов php5-fpm и грузят
проц под 100%. Когда тоже самое на apache2 + mod_php 1,5 сек и нагрузка на
проц 3%.
Ещё такой момент непонятен с nginx.
В Firefox смотрю http заголовки и вижу в обоих случаях(apache2 и nginx)
gzip контент. В Google Chromium можно увидеть сколько скачано и реальный
размер. Для apache2 показывает, что скачано скажем 30kb и реальный размер
70kb, для nginx просто как не сжатое 70kb. Жмёт ли, непонятно.
Если включить apc, то в логах php5-fpm наблюдаю:
Sep 20 21:28:55.550360 [WARNING] [pool joomla] child 11619 said into
stderr: "[Mon Sep 20 21:28:55 2010] [apc-warning] "
Sep 20 21:28:55.550445 [WARNING] [pool joomla] child 11619 said into
stderr: "Potential cache slam averted for key
'cache_mod_mainmenu-b0047de1b6557e1cbc01b3fe0b7aece3_expire'"
Sep 20 21:28:55.550513 [WARNING] [pool joomla] child 11619 said into
stderr: " in /var/www/mydomain.ru/libraries/joomla/cache/storage/apc.php on
line 71."
Sep 20 21:28:55.550562 [WARNING] [pool joomla] child 11619 said into
stderr: ""
ну и половину контента естественно не отдаёт при включенном apc
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [Sysadmins] php-5.3.3 + fpm + nginx
2010-09-20 17:53 [Sysadmins] php-5.3.3 + fpm + nginx ddv
@ 2010-09-20 19:36 ` Anton Farygin
2010-09-21 12:45 ` Sergey Alembekov
2010-09-21 16:56 ` ddv
0 siblings, 2 replies; 8+ messages in thread
From: Anton Farygin @ 2010-09-20 19:36 UTC (permalink / raw)
To: sysadmins
20.09.2010 21:53, ddv@bgc.perm.ru пишет:
> Вечер добрый!
>
> Моя попытка заюзать php-5.3.3... На примере одно джумла сайта..
>
> давно хотел перейти на сабж, но всё ждал php-5.3.3.. код на сайтах всех
> переписал... все сайты работают, но на apache2 + mod_php
>
> А вот сабж почти не работает.
>
А если php-fpm заменить на php-cgi (который запускать через spawn-fcgi) ?
php-fpm у меня тоже на большом проекте не заработал, я с ним буду ещё
разбираться, но у меня возникло чёткое ощущение что оно сильно ...
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [Sysadmins] php-5.3.3 + fpm + nginx
2010-09-20 19:36 ` Anton Farygin
@ 2010-09-21 12:45 ` Sergey Alembekov
2010-09-21 12:45 ` Anton Farygin
2010-09-21 16:56 ` ddv
1 sibling, 1 reply; 8+ messages in thread
From: Sergey Alembekov @ 2010-09-21 12:45 UTC (permalink / raw)
To: sysadmins
20.09.2010 23:36, Anton Farygin пишет:
> php-fpm у меня тоже на большом проекте не заработал, я с ним буду ещё
> разбираться, но у меня возникло чёткое ощущение что оно сильно ...
У меня работает. Правда php-5.3 собирал сам(тогда его в сизифе ещё не было)
--
Regards, Sergey Alembekov
ALTLinux Team
xmpp: rt@jabber.ru
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [Sysadmins] php-5.3.3 + fpm + nginx
2010-09-21 12:45 ` Sergey Alembekov
@ 2010-09-21 12:45 ` Anton Farygin
2010-09-21 12:55 ` Sergey Alembekov
0 siblings, 1 reply; 8+ messages in thread
From: Anton Farygin @ 2010-09-21 12:45 UTC (permalink / raw)
To: sysadmins
21.09.2010 16:45, Sergey Alembekov пишет:
> 20.09.2010 23:36, Anton Farygin пишет:
>> php-fpm у меня тоже на большом проекте не заработал, я с ним буду ещё
>> разбираться, но у меня возникло чёткое ощущение что оно сильно ...
> У меня работает. Правда php-5.3 собирал сам(тогда его в сизифе ещё не было)
А ты php-fpm брал из тарболла php-5.3.3 ?
У меня тоже работает, но не на всех задачах...
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [Sysadmins] php-5.3.3 + fpm + nginx
2010-09-21 12:45 ` Anton Farygin
@ 2010-09-21 12:55 ` Sergey Alembekov
2010-09-21 12:56 ` Anton Farygin
0 siblings, 1 reply; 8+ messages in thread
From: Sergey Alembekov @ 2010-09-21 12:55 UTC (permalink / raw)
To: sysadmins
21.09.2010 16:45, Anton Farygin пишет:
> 21.09.2010 16:45, Sergey Alembekov пишет:
>> 20.09.2010 23:36, Anton Farygin пишет:
>>> php-fpm у меня тоже на большом проекте не заработал, я с ним буду
>>> ещё разбираться, но у меня возникло чёткое ощущение что оно
>>> сильно ...
>> У меня работает. Правда php-5.3 собирал сам(тогда его в сизифе ещё
>> не было)
>
> А ты php-fpm брал из тарболла php-5.3.3 ?
Я использовал /people/dubrsl/packages/php53.git как отправную точку
--
Regards, Sergey Alembekov
ALTLinux Team
xmpp: rt@jabber.ru
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [Sysadmins] php-5.3.3 + fpm + nginx
2010-09-21 12:55 ` Sergey Alembekov
@ 2010-09-21 12:56 ` Anton Farygin
0 siblings, 0 replies; 8+ messages in thread
From: Anton Farygin @ 2010-09-21 12:56 UTC (permalink / raw)
To: sysadmins
21.09.2010 16:55, Sergey Alembekov пишет:
> 21.09.2010 16:45, Anton Farygin пишет:
>> 21.09.2010 16:45, Sergey Alembekov пишет:
>>> 20.09.2010 23:36, Anton Farygin пишет:
>>>> php-fpm у меня тоже на большом проекте не заработал, я с ним буду
>>>> ещё разбираться, но у меня возникло чёткое ощущение что оно
>>>> сильно ...
>>> У меня работает. Правда php-5.3 собирал сам(тогда его в сизифе ещё
>>> не было)
>>
>> А ты php-fpm брал из тарболла php-5.3.3 ?
> Я использовал /people/dubrsl/packages/php53.git как отправную точку
Тогда это оно-же..
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [Sysadmins] php-5.3.3 + fpm + nginx
2010-09-20 19:36 ` Anton Farygin
2010-09-21 12:45 ` Sergey Alembekov
@ 2010-09-21 16:56 ` ddv
2010-09-21 19:32 ` Anton Farygin
1 sibling, 1 reply; 8+ messages in thread
From: ddv @ 2010-09-21 16:56 UTC (permalink / raw)
To: ALT Linux sysadmins' discussion
On Mon, 20 Sep 2010 23:36:53 +0400, Anton Farygin <rider@altlinux.com>
wrote:
> 20.09.2010 21:53, ddv@bgc.perm.ru пишет:
>> Вечер добрый!
>>
>> Моя попытка заюзать php-5.3.3... На примере одно джумла сайта..
>>
>> давно хотел перейти на сабж, но всё ждал php-5.3.3.. код на сайтах всех
>> переписал... все сайты работают, но на apache2 + mod_php
>>
>> А вот сабж почти не работает.
>>
>
> А если php-fpm заменить на php-cgi (который запускать через spawn-fcgi)
?
ведёт себя абсолютно так же... только памяти на 400Мб больше съедает без
нагрузки...
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [Sysadmins] php-5.3.3 + fpm + nginx
2010-09-21 16:56 ` ddv
@ 2010-09-21 19:32 ` Anton Farygin
0 siblings, 0 replies; 8+ messages in thread
From: Anton Farygin @ 2010-09-21 19:32 UTC (permalink / raw)
To: sysadmins
21.09.2010 20:56, ddv@bgc.perm.ru пишет:
> On Mon, 20 Sep 2010 23:36:53 +0400, Anton Farygin<rider@altlinux.com>
> wrote:
>> 20.09.2010 21:53, ddv@bgc.perm.ru пишет:
>>> Вечер добрый!
>>>
>>> Моя попытка заюзать php-5.3.3... На примере одно джумла сайта..
>>>
>>> давно хотел перейти на сабж, но всё ждал php-5.3.3.. код на сайтах всех
>>> переписал... все сайты работают, но на apache2 + mod_php
>>>
>>> А вот сабж почти не работает.
>>>
>>
>> А если php-fpm заменить на php-cgi (который запускать через spawn-fcgi)
> ?
> ведёт себя абсолютно так же... только памяти на 400Мб больше съедает без
> нагрузки...
Значит проблема в настройках. У меня всё работает, правда джумлу я не
пробовал запускать.
Рекомендую поубирать всё лишнее, оставить один процесс (два) php-fpm,
подцепиться к нему через strace и смотреть, что происходит.
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2010-09-21 19:32 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-09-20 17:53 [Sysadmins] php-5.3.3 + fpm + nginx ddv
2010-09-20 19:36 ` Anton Farygin
2010-09-21 12:45 ` Sergey Alembekov
2010-09-21 12:45 ` Anton Farygin
2010-09-21 12:55 ` Sergey Alembekov
2010-09-21 12:56 ` Anton Farygin
2010-09-21 16:56 ` ddv
2010-09-21 19:32 ` Anton Farygin
ALT Linux sysadmins discussion
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/sysadmins/0 sysadmins/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 sysadmins sysadmins/ http://lore.altlinux.org/sysadmins \
sysadmins@lists.altlinux.org sysadmins@lists.altlinux.ru sysadmins@lists.altlinux.com
public-inbox-index sysadmins
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.sysadmins
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git