Отказ NGINX + PHP5-FPM при высокой нагрузке

Я занимаюсь этой проблемой весь день, и это сводит меня с ума. Все результаты и поисковые запросы Google ведут в тупик. Я надеюсь, что кто-то сможет работать со мной, чтобы найти решение для меня и будущих жертв. Начнем.

Я веду очень популярный веб-сайт, который просматривает более 3 миллионов страниц в день. В среднем это 34 просмотра страниц в секунду, но, что более реалистично, в часы пик он достигает более 300 просмотров страниц в секунду. Думайте об этом как о запросах.

Я использую 64-битный сервер Ubuntu 10.04 с 2 процессорами E5620, 12 ГБ оперативной памяти и SSD-накопителем Micron P300 6 ГБ / с. В часы пик загрузка ЦП и памяти средняя (используется 20–30% ЦП и половина памяти).

На этом сайте работает следующее программное обеспечение: NGINX, MySQL, PHP5-FPM, PHP-APC и Memcached. . Хорошо, теперь, наконец, суть сообщения, вот мои журналы ошибок.

/ var / log / php5-fpm

20 июля 14: 49: 47.289895 [УВЕДОМЛЕНИЕ] fpm работает, pid 29373

20 июля 14: 49: 47.337092 [УВЕДОМЛЕНИЕ] ] готов обрабатывать соединения

20 июля, 14: 51: 23.957504 [ОШИБКА] [пул www] не удалось получить активность процесса одного или нескольких дочерних (детей). Попробую еще раз позже.

20 июля, 14:51: 41.846439 [ПРЕДУПРЕЖДЕНИЕ] [pool www] дочерний элемент 29534 завершился с кодом 1 через 114,518174 секунды после начала

20 июля 14: 51: 41.846797 [УВЕДОМЛЕНИЕ] [pool www] дочерний элемент 29597 начался

20 июля 14: 51: 41.896653 [ПРЕДУПРЕЖДЕНИЕ] [pool www] дочерний элемент 29408 завершился по сигналу 11 SIGSEGV через 114,596706 секунд после начала

20 июля 14: 51: 41.897178 [NOTICE] [pool www] child 29598 начат

20 июля 14: 51: 41.903286 [ПРЕДУПРЕЖДЕНИЕ] [pool www] дочерний элемент 29398 завершен с кодом 1 через 114.605761 секунду после запуска

20 июля 14: 51: 41.903719 [УВЕДОМЛЕНИЕ] [pool www] дочерний элемент 29600 запущен

20 июля, 14:51: 41.907816 [ПРЕДУПРЕЖДЕНИЕ] [pool www] дочерний элемент 29437 завершился с кодом 1 через 114.601417 секунд после начала

20 июля, 14:51: 41.908253 [УВЕДОМЛЕНИЕ] [pool www] дочерний процесс 29601 начался

20 июля, 14: 51: 41.916002 [ПРЕДУПРЕЖДЕНИЕ] [pool www] дочерний элемент 29513 завершился с кодом 1 через 114,592514 секунд после начала

20 июля 14: 51: 41.916501 [УВЕДОМЛЕНИЕ] [pool www] дочерний элемент 29602 начался

июл 20 14: 51: 41.916558 [ВНИМАНИЕ] [бассейн www] ребенок 29494 завершил работу по сигналу 11 SIGSEGV через 114,597355 секунд от начала

20 июля 14: 51: 41.916873 [УВЕДОМЛЕНИЕ] [бассейн www] ребенок 29603 начался

20 июля 14: 51: 41.921389 [ПРЕДУПРЕЖДЕНИЕ] [бассейн www] ребенок 29502 завершился с кодом 1 через 114.600405 секунд после запуска

/var/log/nginx/error.log 2011/07/20 15:48:42 [ошибка] 29583 # 0: * 569743 readv () не удалось (104: сброс соединения одноранговым узлом) при чтении восходящего потока, клиент: 77.223.197.193, сервер: domain.com, запрос: " GET /favicon.ico HTTP / 1.1 ", восходящий поток:" fastcgi: //127.0.0.1: 9000 ", хост:" www.domain.com "

2011/07/20 15:48:42 [ошибка] 29578 # 0: * 571695 readv () не удалось (104: сброс соединения одноранговым узлом) при чтении восходящего потока, клиент: 150.70.64.196, сервер: domain.com, запрос: «GET / page HTTP / 1.0», восходящий поток: «fastcgi: / /127.0.0.1:9000 ", хост:" www.domain.com "

2011/07/20 15:48:42 [ошибка] 29581 # 0: * 571050 readv () не удалось (104: сброс подключения одноранговым узлом ) при чтении восходящего потока, клиент: 110.136.157.66, сервер: domain.com, запрос: "GET / page HTTP / 1.1", восходящий поток: "fastcgi: //127.0.0.1: 9000", хост: "www.domain.com "

2011/07/20 15:48:42 [ошибка] 29581 # 0: * 564892 ошибка readv () (104: сброс соединения одноранговым узлом)при чтении восходящего потока, клиент: 110.136.161.214, сервер: domain.com, запрос: «GET / page HTTP / 1.1», восходящий поток: «fastcgi: //127.0.0.1: 9000», хост: «www.domain.com»

2011/07/2015 15:48:42 [ошибка] 29585 # 0: * 456171 readv () не удалось (104: сброс соединения одноранговым узлом) при чтении восходящего потока, клиент: 93.223.33.135, сервер: domain.com, запрос: «GET /favicon.ico HTTP / 1.1», восходящий поток: «fastcgi: //127.0.0.1: 9000», хост: «www.domain.com»

2011/07/20 15:48:42 [ error] 29585 # 0: * 471192 ошибка readv () (104: сброс соединения одноранговым узлом) при чтении восходящего потока, клиент: 74.90.33.142, сервер: domain.com, запрос: «GET / page HTTP / 1.1», восходящий поток: « fastcgi: //127.0.0.1: 9000 ", хост:" www.domain.com "

2011/07/20 15:48:42 [ошибка] 29580 # 0: * 570132 readv () не удалось (104: соединение сбрасывается одноранговым узлом) при чтении восходящего потока, клиент: 180.246.182.191, сервер: domain.com, запрос: «GET / page HTTP / 1.1», восходящий поток: «fastcgi: //127.0.0.1: 9000», хост: «www. domain.com "

Наконец, я хочу указать, что я пытался отключить PHP -APC, чтобы узнать, была ли это ошибка с оптическим кэшем, но ошибки сегментирования все еще сохранялись. У меня также установлен PHP5-SUHOSIN, и я тоже отключил его, но ошибки все равно возникают.

9
задан j0k 30 November 2012 в 09:30
поделиться