У меня большое количество спящих процессов, около 600, большинство из которых являются процессами Apache.
Должен ли я убить все эти спящие процессы или это приведет к полному сбою Apache?
Почему эти процессы вообще спят?
Сервер работает под управлением CentOS 6 с Apache 2.2.
Отключение всех спящих процессов вашей системы не решит никаких проблем, не говоря уже о вашей проблеме.
Лучше быть структурированным и методичным в своем подходе, чем дико мечтать.
Лично я нахожу Научный метод (другие называют это что-то другое) замечательный инструмент, который можно вытащить из комплекта системного администрирования при диагностике проблем.
Служба перестает отвечать.1
Итак, теперь мы знаем, какую реальную проблему решаем, и у нас есть направление. Давайте соберем некоторую информацию, которая поможет нам найти решение.
Проанализируйте собранную информацию. Что на самом деле происходит в системе, когда служба перестает отвечать? Каково состояние ресурсов системы?
Примите соответствующие меры для исправления. Надеюсь, что происходит довольно очевидно, у вас заканчивается память и выходит OOM killer, ваша активность подкачки слишком высока, ваша очередь выполнения слишком длинная, вы привязаны к iobound и т. Д. Если это не очевидно, то вы ' Возможно, вы собираете неверные данные - вы знаете, что делать, вернитесь к пункту 2.
Следите за тем, что делают изменения, внесенные в 4..
Исправили ли изменения проблему? Это лучше? Это хуже? Нет разницы? Куда вы пойдете дальше, зависит от того, что вы найдете. Возможно, вам придется вернуться к 2. и собрать более подходящие данные или 3. повторно проанализировать, какие данные у вас есть, или 4. потому что вы определили ряд потенциальных решений.
Задокументируйте свои выводы и внесенные изменения.
Возвращайтесь в постель / домой с работы / в паб.
1 Это может быть что угодно, хотя «Мой сервер работает медленно», «Мой сервер использует слишком много памяти» ...