Apache виснет, много необработанных запросов.

Тема в разделе "Администрирование серверов", создана пользователем pash_it, 12 янв 2009.

Статус темы:
Закрыта.
Модераторы: mefish, stooper
  1. pash_it

    pash_it Постоялец

    Регистр.:
    5 окт 2007
    Сообщения:
    127
    Симпатии:
    4
    Вот такие вот дела, куча запросов которые не удаляются сами
    В логе апача /var/log/httpd/error_log пишет куча таких ошибок:

    Код:
    [Fri Jan 11 01:32:19 2009] [warn] child process 23641 still did not exit, sending a SIGTERM
    [Fri Jan 11 01:32:19 2009] [warn] child process 23676 still did not exit, sending a SIGTERM
    [Fri Jan 11 01:32:19 2009] [warn] child process 24074 still did not exit, sending a SIGTERM
    
    
    [Fri Jan 11 01:32:21 2009] [error] child process 22741 still did not exit, sending a SIGKILL
    [Fri Jan 11 01:32:21 2009] [error] child process 14410 still did not exit, sending a SIGKILL
    [Fri Jan 11 01:32:21 2009] [error] child process 12978 still did not exit, sending a SIGKILL
    [Fri Jan 11 01:32:21 2009] [error] child process 23676 still did not exit, sending a SIGKILL
    [Fri Jan 11 01:32:21 2009] [error] child process 24074 still did not exit, sending a SIGKILL
    
    
    [Fri Jan 11 01:32:22 2009] [error] could not make child process 22741 exit, attempting to continue anyway
    [Fri Jan 11 01:32:22 2009] [error] could not make child process 14410 exit, attempting to continue anyway
    [Fri Jan 11 01:32:22 2009] [error] could not make child process 12978 exit, attempting to continue anyway
    [Fri Jan 11 01:32:22 2009] [error] could not make child process 17802 exit, attempting to continue anyway
    [Fri Jan 11 01:32:22 2009] [error] could not make child process 14669 exit, attempting to continue anyway
    
    exim: SIGTERM received - message abandoned
    
    exim: SIGTERM received - message abandoned
    
    exim: SIGTERM received - message abandoned
    
    exim: SIGTERM received - message abandoned
    
    exim: SIGTERM received - message abandoned 
    
    Помогает только Ручной рестарт Апача! Не знаю в чем проблема..
     
  2. ants

    ants

    Регистр.:
    1 окт 2006
    Сообщения:
    224
    Симпатии:
    41
    в httpd.conf KeepAlive Off пробовали?
     
    pash_it нравится это.
  3. pash_it

    pash_it Постоялец

    Регистр.:
    5 окт 2007
    Сообщения:
    127
    Симпатии:
    4
    Выключил, будем ждать, оно буквально раз в день происходит. Спасибо за ответ!
     
  4. pash_it

    pash_it Постоялец

    Регистр.:
    5 окт 2007
    Сообщения:
    127
    Симпатии:
    4
    Все равно это случилось:
    При рестарте апачь
    # service httpd restart
    Stopping httpd: [ OK ]
    Remaining processes: 17444 17447 17472 17477 17688 17840 17947 17966 18060 18081 18093 18094 18098 18134 18144 18153 18168 18278 18287 18303 18308 18309 18311 18377 18379 18385 18388 18399 18405 18406 18413 18416 18419 18425 18426 18427 18439 18442 18445 18450 18451 18453 18455 18463 18465 18466 18512 18513 18526 18528 18534 18539 18540 18544 18546 18547 18552 18553 18556 18558 18559 18560 18561 18562 18612 18617 18618 18649 18651 18809

    На низу, после рестарта:
    (98)Address already in use: make_sock: could not bind to address [::]:80
    (98)Address already in use: make_sock: could not bind to address 0.0.0.0:80
    no listening sockets available, shutting down
    Unable to open logs

    В логах, куча таких записей:
    [Tue Jan 13 08:38:49 2009] [warn] child process 18093 still did not exit, sending a SIGTERM
    [Tue Jan 13 08:38:49 2009] [warn] child process 18094 still did not exit, sending a SIGTERM
    [Tue Jan 13 08:38:49 2009] [warn] child process 18097 still did not exit, sending a SIGTERM
    [Tue Jan 13 08:38:49 2009] [warn] child process 18098 still did not exit, sending a SIGTERM
    [Tue Jan 13 08:38:49 2009] [warn] child process 18286 still did not exit, sending a SIGTERM
    [Tue Jan 13 08:38:49 2009] [warn] child process 18287 still did not exit, sending a SIGTERM
    [Tue Jan 13 08:38:49 2009] [warn] child process 18134 still did not exit, sending a SIGTERM
    [Tue Jan 13 08:38:49 2009] [warn] child process 18385 still did not exit, sending a SIGTERM

    Жду любые подсказки, в чем может быть проблема.
     
  5. General Fizz

    General Fizz Боевой Генерал :)

    Регистр.:
    11 апр 2007
    Сообщения:
    753
    Симпатии:
    396
    Уменьши таймаут скажем до 15-20 и сделай тюнинг Апача. Как - я писал недавно на форуме.

    ЗЫ. Своп есть? что там с памятью? вывод top?
     
  6. pash_it

    pash_it Постоялец

    Регистр.:
    5 окт 2007
    Сообщения:
    127
    Симпатии:
    4
    Своп есть 2 гига, занято меньше гига.
    Я вроде бы нашел проблему, в php.ini были маленькие параметры указаны
    max_execution_time
    max_input_time
    memory_limit
    Изменил, ждем будет или нет ошибка, может же быть в этом ошибка!?
     
  7. g00dwin

    g00dwin

    Регистр.:
    9 ноя 2006
    Сообщения:
    164
    Симпатии:
    68
    Попробуй погуглить

    Перейти по ссылке

    Много интересных вариантов выдает. Правда достаточно популярный ответ - типа DOS атака, и советуют помониторить, типа этого
    http://www.crucialparadigm.com/resources/tutorials/server-administration/how-to-howto-install-prm-process-resource-monitor.php

    Но много и других вариантов.
    Напиши поподробней ось, версию апача, какие модули подгружены и используются.
     
  8. zerdek

    zerdek

    Регистр.:
    29 ноя 2007
    Сообщения:
    346
    Симпатии:
    50
    трудно гадать как и что, если сервер действительно загружен, то проще заказать тюнинг.


    на загруженных серверах, можно сделать каскад:
    файрвол -> nginx -> апач

    файрвол(3-5-7 соединений с одного ip) - частично успокаивает DOS(одна буква D) и невменяеммые много-поточные качалки/граберы.

    nginx - проксирование входящих соединений, можно еще и отдача статики. хорошо разгружает апач от рутины работы с tcp, существенно уменьшается кол-во процессов апача и как следствие - экономия памяти и нет или практически нет свапа.

    апач - собираем руками, выкидывая все лишнее, пхп - как модуль апача, модули - линкуем включаем на этапе сборки, т.к. модуль загрузки модулей - мы тоже отключаем :)
    пхп - тож руками и тож хорошая ампутация.

    дебаг и логи - только самые необходимые.
     
  9. HOSTER

    HOSTER

    Регистр.:
    22 апр 2008
    Сообщения:
    213
    Симпатии:
    38
    А процес Апача в состояние zombie не падает???
     
  10. Oleg17

    Oleg17 Постоялец

    Регистр.:
    11 янв 2009
    Сообщения:
    116
    Симпатии:
    14
    Как вариант - глючит какой-либо из модулей. Попробуйте отключить лишние и не нужные модули. В частности, это же касается и PHP-модулей. Хотя могут быть и просто проблемы с железом (память, жесткий).
     
Статус темы:
Закрыта.