- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Сервер стал падать из-за нехватки памяти. Причем, сначала я думал, что ее физически не хватает (было 2Г), поэтому посносил весь доп софт и докупил еще 2Г. Остался работать только майскл и апач (пхп).
Вот пхпинфо о сервере: http://partmaster.com.ua/phpinfo.php
Сервер работает без особой нагрузки и в обычное время load average около 0,15-0,2
Проблема в том, что без очевидных причин в определенный момент за несколько секунд съедается вся доступная память и из рабочих остается только пинг, и еле еле живет апач (без конектов к майскл).
Вот картинка на сервере в момент падения:
Вот еще очень близкое описание бага http://bugs.centos.org/view.php?id=3093.
Может кто сталкивался и нашел решение данного бага или может дать дельный совет, к кому обратиться за решением.
mysql+httpd+еще один процесс httpd сожрали все что только можно. При этом юзается сильно swap что создаёт большую нагрузку на диск.
Покажите конфиг апача, особенно его лимиты.
Апач стоит похоже из пакетов. Есть вариант попробовать его собрать самому, или yum update httpd если получится. Ну и соответственно php пересобрать.
PS я вообще не советую использовать апача и пхп из пакетов.
mysql+httpd+еще один процесс httpd сожрали все что только можно. При этом юзается сильно swap что создаёт большую нагрузку на диск.
Покажите конфиг апача, особенно его лимиты.
Timeout 120
KeepAlive Off
<IfModule prefork.c>
StartServers 8
MinSpareServers 5
MaxSpareServers 20
ServerLimit 256
MaxClients 256
#MaxRequestsPerChild 4000 - это было при падении, уменьшение в 10 раз ничего не дало. сервер опять упал без нагрузки ночью
MaxRequestsPerChild 400
</IfModule>
<IfModule worker.c>
StartServers 2
MaxClients 150
MinSpareThreads 25
MaxSpareThreads 75
ThreadsPerChild 25
MaxRequestsPerChild 0
</IfModule>
Апач виноват в данном случае. Но до этого были падения от комитов в свн репозиторий и тоже ночью, когда никаких запросов (процентов 5 от обычного кол-ва) не было. Также падал от перегенерации индксов майсклем.
mstar добавил 20.03.2009 в 10:07
PS я вообще не советую использовать апача и пхп из пакетов.
Если б можно было - я бы отключил апач на сервере. Виноват скорее всего не пхп или апач, а ядро и баг в нем с памятью. Я там привел линку с наиболее близкой версией ядра и аналогичной проблемой у человека.
это не утечка. просто начните использовать nginx и ограничьте число потомков в apache.
из пакетов, несмотря на поверья сисадминов крайнего севера.
это не утечка. просто начните использовать nginx и ограничьте число потомков в apache.
из пакетов, несмотря на поверья сисадминов крайнего севера.
ясно, спасибо за совет.
А хотя, что это там у вас httpd размером 1.3 ГБ? Это совсем не нормально. nginx немного облегчил бы, но не насовсем.
я бы попробовал отключить модули, если есть специфика, то лучше найти обходной путь и перевести глючащий функционал на cgi. Там память сразу освобождается. Может быть панель глючит.
MaxRequestsPerChild можно тогда еще уменьшить.
B вообще, я смотрю, там все возможные модули апача. Шанс, что один из них глючит, вполне реален. mod_perl, mod_ssl, mod_mem_cache вам реально нужны?
Вот так впиши
<IfModule prefork.c>
StartServers 10
MinSpareServers 20
MaxSpareServers 50
MaxClients 200
MaxRequestsPerChild 50
</IfModule>
Полегчает.
Все чего здесь нет - лишнее, я проверял )).
Если хочешь еще больше уменьшить занятую память, то MaxRequestsPerChild 25, чтобы процессы апача чаще пересоздавались и очищали тем самым занятую память.
Кстати worker можешь закомментировать, его конфиг ненужен, т.к. у тебя используется prefork.
А вообще тебе надо ставить nginx и eAccelerator нагрузка снизится раз в 20, тогда и память ненужна будет лишняя (хватит 300мб на все про все).
А хотя, что это там у вас httpd размером 1.3 ГБ? Это совсем не нормально. nginx немного облегчил бы, но не насовсем.
я бы попробовал отключить модули, если есть специфика, то лучше найти обходной путь и перевести глючащий функционал на cgi. Там память сразу освобождается. Может быть панель глючит.
MaxRequestsPerChild можно тогда еще уменьшить.
не, cgi не выход.
да и почему все уперлись именно в апач? Я же специально акцентировал внимание, что падал сервер не только из-за апача. К примеру томкет у нас там жил и валил, svnserve аналогично валил, mysql.
B вообще, я смотрю, там все возможные модули апача. Шанс, что один из них глючит, вполне реален. mod_perl, mod_ssl, mod_mem_cache вам реально нужны?
mod_perl уже не нужен, багзилу снесли, отключу. mod_ssl, mod_mem_cache юзаем.
А вообще тебе надо ставить nginx и eAccelerator нагрузка снизится раз в 20, тогда и память ненужна будет лишняя (хватит 300мб на все про все).
Ребята, ресурсов на сервере хватает с запасом на 5-10 кратный рост нагрузки. Даже когда нас парсят паралельно несколько человек - это никак не отражается на работе. Вот примерная картина обычной работы:
[ATTACH]31234[/ATTACH]
Проблема в том, что без всяких видимых причин при достаточном обхеме ресурсов вдруг процессы начинают жрать память и своп. Иногда после киляния мертвых процессов сервер оживает, но так бывает не всегда и к примеру сегодня с 4 до 8 лежал намертво. Кроме пинга инчего не работало.
Надеюсь, я подробно рассказал о проблеме. Еще надеюсь, что откат до предидущего релиза ядра решит проблему.
Вопрос задал, так как система довольно распространенная, ставилась хостером шаблонно и есть шанс, что кто-то уже решал подобного рода трабл.
mstar, неважно что именно валится, но важно какой именно процесс потребляет память.
неужели любой произвольный ?
mod_mem_cache - возможно так и юзаете что пухнет.
я бы крон глянул, может какой prelink создает большую нагрузку, может еще что. А вообще дело не в ядре, а в софте, о чем я выше говорил, но мой совет восприняли как шутку.
В момент предПадения было бы хорошо увидеть статус апача. И процеслист мускула