Реклама на сайте Advertise with us

Проблемы с FreeBsd + php-fpm

Расширенный поиск по форуму
 
Новая тема Новая тема   
Автор
Поиск в теме:



С нами с 28.10.08
Сообщения: 101
Рейтинг: 106

Ссылка на сообщениеДобавлено: 19/12/14 в 11:43       Ответить с цитатойцитата 

Нужен совет.
При смешных 150 запросах в секунду на FreeBsd 8.4 + php 5.5 (php-fpm) + nginx
Процессы php-fpm выжирают весь CPU. Такое ощущение что не работает Zend opcache (хотя включен и должен работать)

На Linux машинах такой проблемы не наблюдалось, но данный проект с инфраструктурой на FreeBsd и переехать не получится.

Xhprof показал нагруз основной дают подключаемые вендоры composer (которые уже как только можно оптимизированы).

Последние большие проекты все работают на Debian или Ubuntu и таких проблем нет, гугл ничего конкретного не дал.

Может кто сталкивался с подобным?

0
 



С нами с 30.04.04
Сообщения: 602
Рейтинг: 293

Ссылка на сообщениеДобавлено: 19/12/14 в 12:20       Ответить с цитатойцитата 

Выполни плиз "netstat -Lan", там будет строчка с кол-вом коннектов к сокету, с которым работает php-fpm, скинь ее плиз.

Кроме этого конфиг php-fpm засвети плиз. Интересует всё с префиксом pm.

1
 



С нами с 28.10.08
Сообщения: 101
Рейтинг: 106

Ссылка на сообщениеДобавлено: 19/12/14 в 12:36       Ответить с цитатойцитата 

condom007:

Some tcp sockets may have been created.
unix 0/0/8192 /tmp/fastcgi_sock

pm.start_servers = 8
pm.min_spare_servers = 8
pm.max_spare_servers = 32
pm.max_children=32
pm.process_idle_timeout = 10s
pm.max_requests = 200
pm.status_path = /status

1
 



С нами с 30.04.04
Сообщения: 602
Рейтинг: 293

Ссылка на сообщениеДобавлено: 19/12/14 в 12:50       Ответить с цитатойцитата 

Zona писал:
condom007:

Some tcp sockets may have been created.
unix 0/0/8192 /tmp/fastcgi_sock

pm.start_servers = 8
pm.min_spare_servers = 8
pm.max_spare_servers = 32
pm.max_children=32
pm.process_idle_timeout = 10s
pm.max_requests = 200
pm.status_path = /status


А ты когда выполнял netstat проблемы на сервере были или нет (те, которые ты описывал)?

И еще, какое примерно среднее время ответа скрипта phpшного? Замеряли?

1
 



С нами с 28.10.08
Сообщения: 101
Рейтинг: 106

Ссылка на сообщениеДобавлено: 19/12/14 в 12:58       Ответить с цитатойцитата 

Цитата:
А ты когда выполнял netstat проблемы на сервере были или нет (те, которые ты описывал)?


Не совсем, так как все сейчас через nginx перекешировано, сейчас отключил кеш, нагруз сразу вырос до 50% (восьмиядерный Intel Xeon E3-1230) и держится примерно в этом диапазоне, в пиках до кеширования выжирал до 100%, LA совсем безумные данные показывало 80+

Сейчас выполнил команду - по сокетам не поменялась картина (при 50% CPU)

0
 



С нами с 28.10.08
Сообщения: 101
Рейтинг: 106

Ссылка на сообщениеДобавлено: 19/12/14 в 13:05       Ответить с цитатойцитата 

Цитата:
какое примерно среднее время ответа скрипта phpшного?


да по xhprof до оптимизации загрузки composer вендоров выдавал 23 секунды icon_biggrin.gif, что явно говорило о том что в байткод ничего не кешится,
после оптимизации 309 миллисекунд, но это все равно много для выборки и отдачи json файлов (иногда без доступа к бд).

Я грешу на Zend Opcache/ Zend Optimizer, который "как-то не так" работают. Сейчас вот ищу/ставлю мониторинг работы этих приблуд, чтобы проверить.

0
 



С нами с 30.04.04
Сообщения: 602
Рейтинг: 293

Ссылка на сообщениеДобавлено: 19/12/14 в 13:23       Ответить с цитатойцитата 

Zona писал:
да по xhprof до оптимизации загрузки composer вендоров выдавал 23 секунды icon_biggrin.gif, что явно говорило о том что в байткод ничего не кешится,
после оптимизации 309 миллисекунд, но это все равно много для выборки и отдачи json файлов (иногда без доступа к бд).

Я грешу на Zend Opcache/ Zend Optimizer, который "как-то не так" работают. Сейчас вот ищу/ставлю мониторинг работы этих приблуд, чтобы проверить.


Сколько же у тебя там либ композер насобирал? Скрипт при отдаче json'а юзает все эти либы? Автолоадер свой или композеровский? У тебя там случайно никакой xdebug или xhprof для каждого запроса не включен?

1
 



С нами с 28.10.08
Сообщения: 101
Рейтинг: 106

Ссылка на сообщениеДобавлено: 19/12/14 в 13:31       Ответить с цитатойцитата 

condom007:
Цитата:

Сколько же у тебя там либ композер насобирал? Скрипт при отдаче json'а юзает все эти либы? Автолоадер свой или композеровский?


Автолоадер теперь прикомпилен и там теперь нет проверок file_exists.
используется Silex (тот что на компонентах Symfony2) в качестве фреймворка, естественно он грузит все.

Данное приложение - это API для мобильных приложений и плагинов для браузеров.
То есть где-то отдается статический json, где-то с измененной структурой, где-то формируется из данных в БД.

Аналогичные приложения запускались под линуксом и таких проблем не возникало.

0
 



С нами с 14.11.05
Сообщения: 56
Рейтинг: 177

Ссылка на сообщениеДобавлено: 19/12/14 в 14:17       Ответить с цитатойцитата 

Уверен, что на линуксе точно такие же конфиги php-fpm пула?
150 rps - это примерно по 50 каждые 300 мс = время отдачи контента. pm.max_children=32 может не хватать. Смотри php-fpm.log
Также pm.max_requests = 200 не очень хорошо. Процессы будут почти каждую секунду перезапускаться. Если память не течет, то можно поставить pm.max_requests = 0.

4
 



С нами с 30.04.04
Сообщения: 602
Рейтинг: 293

Ссылка на сообщениеДобавлено: 19/12/14 в 14:48       Ответить с цитатойцитата 

lalex писал:


А мы уже посмотрели пул очередей, он пустой. Поэтому спаунер, имхо, можно исключить из подозрений.

4
 



С нами с 28.10.08
Сообщения: 101
Рейтинг: 106

Ссылка на сообщениеДобавлено: 19/12/14 в 15:08       Ответить с цитатойцитата 

На линуксе такие же настройки.

Господа, спасибо за подсказки - буду разбираться дальше

0
 



С нами с 30.04.04
Сообщения: 602
Рейтинг: 293

Ссылка на сообщениеДобавлено: 19/12/14 в 16:40       Ответить с цитатойцитата 

Zona писал:

Отпишись потом плиз из-за чего проблема была. Тоже интересно.

2
 
Новая тема Новая тема   

Текстовая реклама в форме ответа
Заголовок и до четырех строчек текста
Длина текста до 350 символов
Купить рекламу в этом месте!


Перейти:  



Спонсор раздела Стань спонсором этого раздела!

Реклама на сайте Advertise with us

Опросы

Рецепт новогоднего блюда 2022



Обсудите на форуме обсудить (11)
все опросы »