Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Администрирование Web серверов и Web служб > Список процессов - Команда Sleep


Автор: nicka47 16.7.2008, 16:48
Что означает, когда при слежении за процессами на сервере, постоянно возникают процессы с командой - Sleep?
 администратор говорит мне, что их не должно быть совсем, и раз они существуют, то это моя ошибка как разработчика сайта, и это может быть причиной время от временного зависания сервера.

МОжете пояснить мне суть данного явления (Sleep - запросов)???

Сайт несильно посещаемый, в день поситителей порядка 500 человек. Я постоянно наблюдаю за процесами, в кажды момент времени обычно бывает от 0 до 5-6 процессов Sleep, максимальное время их существования ну....я наблюдала до 50-60, сейчас администратор говорит чтопосадил лимит 60

Просканировала весь свой код, у меня везде стоит закрытие соединения с сервером.

Автор: Fortop 16.7.2008, 16:59
nicka47
php функцию sleep, usleep не используешь?

Автор: nicka47 16.7.2008, 17:00
Fortop, нет, впервые слышу такое, всегда обходилась без....
а что?

Добавлено через 1 минуту и 45 секунд
почитала про команду Sleep, а какое это имеет отношение к  sleep запросам в процесаах?

Я должна следить за очередностью выполнений запросов на сайте? 

Автор: Fortop 16.7.2008, 17:17
Я похоже несколько напутал. Вопрос я так понимаю о MySQL сервере?

Автор: nicka47 16.7.2008, 17:20
Fortop,  да

Автор: Fortop 16.7.2008, 20:17
nicka47
pconnect используется?


Автор: nicka47 16.7.2008, 20:28
Fortop,  нет

Автор: Nigel 16.7.2008, 20:39
Возможно время генерации ваших страниц очен большое или происходит зацикливание в коде. Используйте netstat
Код

netstat -ntp | grep :(здесь указываем порт)

и увидите процесс, который держит соединение. Возможно, поможет трассировка (команда strace) и отладчик gdb.

Автор: nicka47 17.7.2008, 10:30
Код

ob_start();


посадили, чтобы обеспечить закрытие соединения.


Nigel, сообщу админу.

Автор: MuToGeN 17.7.2008, 18:11
Цитата(nicka47 @  17.7.2008,  10:30 Найти цитируемый пост)
    
ob_start();

Цитата(nicka47 @  17.7.2008,  10:30 Найти цитируемый пост)

посадили, чтобы обеспечить закрытие соединения.

Мне ясно только то, что ничего не ясно. Конкретизируйте, пожалуйста.

Автор: nicka47 17.7.2008, 20:32
MuToGeN,  да мне тоже не особо. Ясно , что сервер время от времени начинает подвисать. На сервере всего 2 сайта функционируют, и вот общими усилиями пытаемся разобраться кто виноват, 1 или второй сайт или сам сервер.

Мне как разработчику админ пока указывает только на эти Sleep запросы в процессах. Я как могла оптимизировала код.Все индексы стоят. Все запросы обычные. PHP Логи чистые. 

ob_start(); посадили к тому, что он как бы делает так, что сперва ждет пока сгенерируеться вся страница, а потом уже передает клиенту, что как бы дает гарантию что клиент получит страницу уже после всего кода и значит дойдет до строки с закрытием соединения с сервером. ВРоде бы даже помогло, как будто этих слипов нашей базы стало меньше и они стали непродолжительными, максимум до 30 секунд, обычно 1-10, но иногда все таки идет выше 60, просто сервер настроен так, что после 60 убивает процесс.

Вот нашли в логе одного из сайтов сервера следующие записи, что они могут означать?


[Wed Jul 16 10:58:38 2008] [warn] child process 4403 still did not exit, sending a SIGTERM
[Wed Jul 16 10:58:40 2008] [warn] child process 4403 still did not exit, sending a SIGTERM
[Wed Jul 16 10:58:42 2008] [warn] child process 4403 still did not exit, sending a SIGTERM
[Wed Jul 16 10:58:43 2008] [notice] caught SIGTERM, shutting down
[Wed Jul 16 11:13:41 2008] [notice] suEXEC mechanism enabled (wrapper: /usr/sbin/suexec)
[Wed Jul 16 11:13:43 2008] [notice] Digest: generating secret for digest authentication ...
[Wed Jul 16 11:13:43 2008] [notice] Digest: done
[Sun Jul 13 04:26:52 2008] [notice] mod_python: Creating 4 session mutexes based on 1000 max processes and 0 max threads.
[Sun Jul 13 04:26:52 2008] [notice] Apache/2.2.3 (Fedora) configured -- resuming normal operations

или вот это

[Thu Jul 17 05:12:55 2008] [notice] SIGHUP received.  Attempting to restart
[Thu Jul 17 05:12:58 2008] [notice] Digest: generating secret for digest authentication ...
[Thu Jul 17 05:12:58 2008] [notice] Digest: done

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)