php-fpm experimental freebsd port

6 views
Skip to first unread message

Andrei Nigmatulin

unread,
Jan 19, 2008, 10:32:13 PM1/19/08
to highloa...@googlegroups.com
Готов экспериментальный порт для freebsd, приглашаю всех желающих тестировать.

1) Скачивать http://php-fpm.anight.org/downloads/freebsd-port/php5-fpm.tar.gz
2) Распаковывать в /usr/ports/lang
3) make

Пока только для php-5.2.5.

Очень нужны ваши отзывы.


--
Andrei Nigmatulin
GPG PUB KEY 6449830D

Now I lay me down to sleep(3)
Pray the OS my core to keep
If I die before I wake
Pray the Disk my core to take

fixxxer

unread,
Jan 20, 2008, 1:28:44 PM1/20/08
to highload-php-ru
скорее про freebsd чем про порты (с ними то все нормально).

при превышении общего числа воркеров некоего числа в районе 20-25
начинается такая фигня

Jan 20 21:25:05.369686 [NOTICE] fpm_children_make(), line 305: child
39753 (pool XXXXXXXXX) started
...
Jan 20 21:25:05.386165 [NOTICE] fpm_event_loop(), line 113: libevent:
entering main loop
Jan 20 21:25:05.386678 [NOTICE] fpm_got_signal(), line 70: received
SIGCHLD
Jan 20 21:25:05.387006 [WARNING] fpm_children_bury(), line 229: child
39756 (pool XXXXXXXXXX) exited on signal 11 SIGSEGV after 0.000904
seconds
Jan 20 21:25:05.388379 [NOTICE] fpm_children_make(), line 305: child
39757 (pool XXXXXXXXX) started
Jan 20 21:25:05.389991 [WARNING] fpm_children_bury(), line 229: child
39755 (pool XXXXXXXX) exited on signal 11 SIGSEGV after 0.008343
seconds
Jan 20 21:25:05.392083 [NOTICE] fpm_children_make(), line 305: child
39758 (pool XXXXXXX) started
.......

на php-5.2.4 / fpm 0.5.4 все ok при той же конфигурации.

On 20 янв, 06:32, Andrei Nigmatulin <andrei.nigmatu...@gmail.com>
wrote:
> Готов экспериментальный порт для freebsd, приглашаю всех желающих тестировать.
>
> 1) Скачиватьhttp://php-fpm.anight.org/downloads/freebsd-port/php5-fpm.tar.gz

fixxxer

unread,
Jan 20, 2008, 2:00:44 PM1/20/08
to highload-php-ru
отбой:) дело было в http://news.php.net/php.cvs/47376

Andrei Nigmatulin

unread,
Jan 20, 2008, 2:56:16 PM1/20/08
to highloa...@googlegroups.com

Нет, это ошибка в php-fpm. Патч должен помочь.

PS. последствия неинициализированного SG(sapi_headers).mimetype по идее могли
проявляться только при выполнении запроса. В твоем случае воркеры валились
сразу после рождения, до выполнения запросов.

patch-0.5.6-1.txt

fixxxer

unread,
Jan 20, 2008, 3:34:24 PM1/20/08
to highload-php-ru
On 20 янв, 22:56, Andrei Nigmatulin <andrei.nigmatu...@gmail.com>
wrote:
> On Sunday 20 January 2008 22:00, fixxxer wrote:
>
> > отбой:) дело было вhttp://news.php.net/php.cvs/47376
> Нет, это ошибка в php-fpm. Патч должен помочь.
>
> PS. последствия неинициализированного SG(sapi_headers).mimetype по идее могли
> проявляться только при выполнении запроса. В твоем случае воркеры валились
> сразу после рождения, до выполнения запросов.

понятно, спасибо.

возможно, дело еще в том, что, наложив тот патч, я - раз уж теперь
ставим все из портов - грохнул work/.build* work/.install* и сделал по
привычке make deinstall && make reinstall, успешно таким образом
удалив php-fpm.conf, и восстановил его по не очень новой копии, и не
факт что получилось идентично. Это я, вообще, к тому, что неплохо бы
было, если бы порт /usr/local/etc/php-fpm.conf вообще не трогал, а
пример конфига назвать, скажем, php-fpm.conf.example.

Andrei Nigmatulin

unread,
Jan 20, 2008, 9:06:12 PM1/20/08
to highloa...@googlegroups.com
On Sunday 20 January 2008 23:34, fixxxer wrote:
> возможно, дело еще в том, что, наложив тот патч, я - раз уж теперь
> ставим все из портов - грохнул work/.build* work/.install* и сделал по
> привычке make deinstall && make reinstall, успешно таким образом
> удалив php-fpm.conf, и восстановил его по не очень новой копии, и не
> факт что получилось идентично. Это я, вообще, к тому, что неплохо бы
> было, если бы порт /usr/local/etc/php-fpm.conf вообще не трогал, а
> пример конфига назвать, скажем, php-fpm.conf.example.

Да, надо будет посмотреть как в портах не трогать конфиги при make deinstall.

Vasiliy G Tolstov

unread,
Jan 21, 2008, 1:33:39 AM1/21/08
to highloa...@googlegroups.com
Andrei Nigmatulin wrote:
> Готов экспериментальный порт для freebsd, приглашаю всех желающих тестировать.
>
> 1) Скачивать http://php-fpm.anight.org/downloads/freebsd-port/php5-fpm.tar.gz
> 2) Распаковывать в /usr/ports/lang
> 3) make
>
> Пока только для php-5.2.5.
>
> Очень нужны ваши отзывы.
>
>
>
По ссылке отдается странно файл. Контент тайп не верный что ли...
Если качать вгетом - то в файле странные символы появляются.

--
С уважением, Vasiliy G Tolstov
http://www.selfip.ru

v_tolstov.vcf

Sergej Kandyla

unread,
Jan 21, 2008, 5:41:40 AM1/21/08
to highloa...@googlegroups.com
Andrei Nigmatulin wrote:
> Готов экспериментальный порт для freebsd, приглашаю всех желающих тестировать.
>
> 1) Скачивать http://php-fpm.anight.org/downloads/freebsd-port/php5-fpm.tar.gz
> 2) Распаковывать в /usr/ports/lang
> 3) make
>
> Пока только для php-5.2.5.
>
> Очень нужны ваши отзывы.
>
>
>
Замечательно!
Все завелось наура. Причем ставил просто в нагрузку к уже поставленному
из портов php.

# less /var/db/ports/php5-fpm/options
# This file is auto-generated by 'make config'.
# No user-servicable parts inside!
# Options for php5-fpm-5.2.5
_OPTIONS_READ=php5-fpm-5.2.5
WITHOUT_CLI=true
WITHOUT_DEBUG=true
WITH_SUHOSIN=true
WITH_MULTIBYTE=true
WITHOUT_IPV6=true
WITH_MAILHEAD=true
WITH_PATHINFO=true


Не совсем ясно для чего тут присутствует опция CLI, ведь подразумевает
что php-fpm не будет использоваться как модуль апача...

В конфиге php-fpm прописал другой порт, поправил конфиги нжинкса на этот
порт, отрелоадил нжикс - все жужжит ;)

# pkg_info |grep php
php5-5.2.5 PHP Scripting Language
php5-dom-5.2.5 The dom shared extension for php
php5-extensions-1.1 A "meta-port" to install PHP extensions
php5-fpm-5.2.5 PHP Scripting Language with FastCGI Process Manager
php5-gd-5.2.5 The gd shared extension for php
php5-gettext-5.2.5 The gettext shared extension for php
php5-iconv-5.2.5 The iconv shared extension for php
php5-mbstring-5.2.5 The mbstring shared extension for php
php5-mysql-5.2.5 The mysql shared extension for php
php5-mysqli-5.2.5 The mysqli shared extension for php
php5-pcre-5.2.5 The pcre shared extension for php
php5-posix-5.2.5 The posix shared extension for php
php5-session-5.2.5 The session shared extension for php
php5-simplexml-5.2.5 The simplexml shared extension for php
php5-spl-5.2.5 The spl shared extension for php
php5-xml-5.2.5 The xml shared extension for php
php5-xmlreader-5.2.5 The xmlreader shared extension for php
php5-xmlwriter-5.2.5 The xmlwriter shared extension for php
php5-zlib-5.2.5 The zlib shared extension for php


В версии 0.5.5 вы написали о появлении стартового скрипта, как бы
взглянуть на него, а то чтото не могу найти...

PS. спасибо огромное за freebsd port и особенно за php-fpm :) !

--
Wbr, SK

Andrei Nigmatulin

unread,
Jan 21, 2008, 6:23:19 AM1/21/08
to highloa...@googlegroups.com
On Monday 21 January 2008 09:33, Vasiliy G Tolstov wrote:
> По ссылке отдается странно файл. Контент тайп не верный что ли...
> Если качать вгетом - то в файле странные символы появляются.

Спасибо, поправил.

Andrei Nigmatulin

unread,
Jan 21, 2008, 6:25:46 AM1/21/08
to highloa...@googlegroups.com
On Monday 21 January 2008 13:41, Sergej Kandyla wrote:
> Замечательно!
> Все завелось наура. Причем ставил просто в нагрузку к уже поставленному
> из портов php.
>
> # less /var/db/ports/php5-fpm/options
> # This file is auto-generated by 'make config'.
> # No user-servicable parts inside!
> # Options for php5-fpm-5.2.5
> _OPTIONS_READ=php5-fpm-5.2.5
> WITHOUT_CLI=true
> WITHOUT_DEBUG=true
> WITH_SUHOSIN=true
> WITH_MULTIBYTE=true
> WITHOUT_IPV6=true
> WITH_MAILHEAD=true
> WITH_PATHINFO=true
>
>
> Не совсем ясно для чего тут присутствует опция CLI, ведь подразумевает
> что php-fpm не будет использоваться как модуль апача...

CLI это отдельный sapi, ничто не мешает ему собираться вместе с cgi/fastcgi.

> В версии 0.5.5 вы написали о появлении стартового скрипта, как бы
> взглянуть на него, а то чтото не могу найти...

Он устанавливается в $prefix/sbin/php-fpm:

$ ./php-fpm
Usage: ./php-fpm {start|stop|quit|restart|reload}

fixxxer

unread,
Jan 21, 2008, 7:55:36 AM1/21/08
to highload-php-ru
On 21 янв, 14:25, Andrei Nigmatulin <andrei.nigmatu...@gmail.com>
wrote:
> > В версии  0.5.5 вы написали о появлении стартового скрипта,  как бы
> > взглянуть на него, а то чтото не могу найти...
>
> Он устанавливается в $prefix/sbin/php-fpm:
>
> $ ./php-fpm
> Usage: ./php-fpm {start|stop|quit|restart|reload}

В freebsd rc-скрипты традиционно располагаются в /usr/local/etc/rc.d и
используют /etc/rc.subr.
Вот, написал такое для fpm:
http://symbi.org/misc/php-fpm

Alex Vorona

unread,
Jan 22, 2008, 7:28:49 AM1/22/08
to highloa...@googlegroups.com
fixxxer пишет:

> Вот, написал такое для fpm:
> http://symbi.org/misc/php-fpm
неплохо бы согласоваться с дефолтным конфигом или изменить его. А то в
нём PID в /usr/local/logs/php-fpm.pid, а в rc-скрипте /var/run/php-fpm.pid

Andrei Nigmatulin

unread,
Jan 22, 2008, 7:49:51 AM1/22/08
to highloa...@googlegroups.com

Путь к pid файлу задается опцией configure --with-fpm-pid=/var/run/php-fpm.pid

Этот путь автоматически попадает в устанавливаемый rc скрипт.

Если всех пользователей php-fpm на freebsd устраивает предложенный скрипт, я
могу включить его в дистрибутив.

Sergej Kandyla

unread,
Jan 22, 2008, 8:20:53 AM1/22/08
to highloa...@googlegroups.com
Andrei Nigmatulin wrote:
> On Tuesday 22 January 2008 15:28, Alex Vorona wrote:
>
>> fixxxer пишет:
>>
>>> Вот, написал такое для fpm:
>>> http://symbi.org/misc/php-fpm
>>>
>> неплохо бы согласоваться с дефолтным конфигом или изменить его. А то в
>> нём PID в /usr/local/logs/php-fpm.pid, а в rc-скрипте /var/run/php-fpm.pid
>>
>
> Путь к pid файлу задается опцией configure --with-fpm-pid=/var/run/php-fpm.pid
>
> Этот путь автоматически попадает в устанавливаемый rc скрипт.
>
> Если всех пользователей php-fpm на freebsd устраивает предложенный скрипт, я
> могу включить его в дистрибутив.
>
>
>
Меня устраивает.
Если уж на то пошло, то имхо былобы класно, чтобы по дефолту

"pid_file" /var/run/php-fpm.pid
"error_log" /var/log/php-fpm.log

и стартовый скрипт в /usr/loca/etc/rc.d/

--
Wbr, SK

Vasiliy G Tolstov

unread,
Jan 29, 2008, 8:24:45 AM1/29/08
to highloa...@googlegroups.com
Andrei Nigmatulin wrote:
> On Tuesday 22 January 2008 15:28, Alex Vorona wrote:
>
>> fixxxer пишет:
>>
>>> Вот, написал такое для fpm:
>>> http://symbi.org/misc/php-fpm
>>>
>> неплохо бы согласоваться с дефолтным конфигом или изменить его. А то в
>> нём PID в /usr/local/logs/php-fpm.pid, а в rc-скрипте /var/run/php-fpm.pid
>>
>
> Путь к pid файлу задается опцией configure --with-fpm-pid=/var/run/php-fpm.pid
>
> Этот путь автоматически попадает в устанавливаемый rc скрипт.
>
> Если всех пользователей php-fpm на freebsd устраивает предложенный скрипт, я
> могу включить его в дистрибутив.
>
>
>
Устраивает в принципе. Вообще, больше спасибо за порт! Завелся легко,
вордпресс с апача на nginx+php-fpm перевелся быстро.
v_tolstov.vcf
Reply all
Reply to author
Forward
0 new messages