Пишу, по большей части, про историю, свою жизнь и немного про программирование.

PHP-FPM будет входить в состав PHP 5.3.x

Отличная новость PHP-FPM (это патч к PHP, который делается Андреем Нигматуллиным и Майклом Шадлом, улучшает в PHP поддержку FastCGI) наконец-то будет входить в состав PHP 5.3.X.

Если вы не знакомы с этим патчем, то перечислю основные отличиями PHP-FPM от того, что входит в PHP по-умолчанию: умеет демонизироваться, умеет останавливать процессы без потери запросов, адаптивное к нагрузке количество процессов, возможность запуска с указанным gid/uid, chroot и различными опциями php.ini для каждого демона, возможность писать лог stdout и stderr, возможность рестартовать процессы без порчи кеша opcode в разделяемой памяти (при использовании eaccelerator), насильное завершение процесса по времени выполнения (как известно, set_time_limit не всегда это делает).

А так же возможность задавать заговолок ответа при фатальных ошибках PHP, поддержка возможности nginx 0.5.9+ передавать большие POST-запросы (например, загрузку файла) без сброса на диск, новая функция PHP fastcgi_finish_request, которая позволяет выполнять код после того как контент был отдан клиенту и веб-сервер и освободился для следующего запроса и slowlog, позволяющий контролировать какие скрипты выполняются медленнее указанного лимита.

В общем, исключительно полезный патч. Жаль, что в ветку PHP 5.2.X его почему-то не включат. Я не знаю причины, в сообщении на «Гугл-группах» по этому поводу написано « no way to add it to 5.2, sorry». Для PHP 5.2.X патч по-прежнему придётся накладывать руками, жаль.

На ветку 5.3.X вряд ли пока переходит много народу. Я попробовал мигрировать пару проектов, неудачно. Один завис (из-за использования crypt), второй заработал только частично. Очевидно, что обратная совместимость серьёзно поломана. При этом я не использую ничего, что перечисленно в официальном списке несовместимости.

5 комментариев
hshhhhh.name 2010

болк, расскажите ка мне, а то я сам читаю интернеты и ничего не могу понять.
php-fpm в chroot’e это мне надо будет ему реально создавать там иммитацию полноценной рабочей среды или я просто могу сказать «дальше чем за эту дирректорию процесс обрабатывающий этот домен не выходит».

у меня впс, в нем разные сайты. хочу заизолировать, но апача нет -​-​ для него решение знаю.
nginx + php-cgi

Евгений Степанищев (bolknote.ru) 2010

Комментарий для hshhhhh.name:

Я сейчас редко сталкиваюсь с PHP (только когда свой сайт делаю), так что не могу сказать как там дела обстоят с chroot на php-fpm. Но поиск в «Гугле» даёт нам первую ссылку: http://wdev.tk/article/18.html

hshhhhh.name 2010

гугл я уже перечитал весь насквозь и буду читать дальше.
я просто надеялся что вы знаете волшебное решение :).

hshhhhh.name 2010

кстати, в статье не освещена тема jail, во фре есть такая штука, никие схруты не нужны -​-​ запирает скрипт в нужной тебе дирректории. в линуксе, к сожалению, нет :(.

Евгений Степанищев (bolknote.ru) 2010

Комментарий для hshhhhh.name:

я просто надеялся что вы знаете волшебное решение :).

Не :) Я ни разу не запирал PHP в chroot