Задать вопрос

Утечка памяти в Linux?

Привет, Хабр.



Такая проблема, на сервере куда-то утекает память.



top — 14:58:30 up 21 days, 16:05, 2 users, load average: 0.66, 0.50, 0.49

Tasks: 145 total, 2 running, 141 sleeping, 2 stopped, 0 zombie

Cpu(s): 15.9%us, 0.0%sy, 0.0%ni, 84.1%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st

Mem: 8194056k total, 8109096k used, 84960k free, 921072k buffers

Swap: 7815580k total, 764k used, 7814816k free, 6353068k cached







На сервере установлены:

— nginx/0.8.43 (/etc/nginx/nginx.conf, /etc/nginx/sites-enabled/www.hostname.ru

— mysql Ver 14.12 Distrib 5.0.51a, for debian-linux-gnu (x86_64) using readline 5.2 (дефолтный конфиг)

— php5-fpm (php.ini, php5-fpm.conf

PHP 5.3.5-0.dotdeb.0 (fpm-fcgi) (built: Jan 7 2011 00:07:27)

Copyright © 1997-2009 The PHP Group

Zend Engine v2.3.0, Copyright © 1998-2010 Zend Technologies

with Suhosin v0.9.32.1, Copyright © 2007-2010, by SektionEins GmbH



— Sphinx 0.9.9-release (r2117) (indexer --all запускается раз в 5 минут по крону)

— Сайт на CodeIgniter-e, около 5000 HTTP запросов в минуту



Если сервер перезагрузить — всё хорошо, но примерно за неделю вся память сжирается неизвестно куда. Как посмотреть, куда она делась и как её освободить?
  • Вопрос задан
  • 12559 просмотров
Подписаться 4 Оценить 5 комментариев
Решения вопроса 1
opium
@opium
Просто люблю качественно работать
По мойму вы не разобрались в матчасти и начали истерику.
У вас не кушается свап значит системе хватает памяти. Линукс активно использует для кеша память им собственно и зажрана ваща память, если память нужна будет программе то линукс освободит память для программы.
Бояться надо когда растет swap used
Swap: 7815580k total, 764k used, 7814816k free, 6353068k cached
У меня примерно всегда такая ситуация

Mem: 8039080k total, 7962872k used, 76208k free, 3756k buffers
Swap: 10092536k total, 1516k used, 10091020k free, 7122616k cached

И аналогичная на серверах с 24 гигами оперативы.
Ответ написан
Пригласить эксперта
Ответы на вопрос 8
@Bobylov
Это обычный кеш файлов в оперативной памяти. В случае надобности он очищается мгновенно.
Ответ написан
Комментировать
Constantin
@Constantin
И где тут утечки?
Linux уже пару лет как юзает всею доступную память под кэш (921072k buffers)
Чего паникуем то?
Ответ написан
Комментировать
michs
@michs
Это линукс кэширует файлы. Всё нормально.
Ответ написан
Комментировать
@Bobylov
Утилита htop покажет реальный объем занятой памяти и объем вот этого самого кэша.
Ответ написан
homm
@homm
Ваша память утекает вот сюда: 921072k buffers 6353068k cached
Просто диву даешься, как сервера оказываются в руках у таких продвинутых специалистов.
Ответ написан
@DorBer
Скорее всего php5-fpm отжирает. Он ведь занятую память не освобождает. А с ростом запросов еще и дочек плодит, которые занимаются тем же. Вот из вашего конфига:

pm.max_children = 50
pm.start_servers = 20
pm.min_spare_servers = 5
pm.max_spare_servers = 35
Ответ написан
@inkvizitor68sl
Linux-сисадмин с 8 летним стажем.
В htop лучше посмотрите сколько памяти занято.
Ответ написан
Комментировать
@odmin4eg
я использую eAccelerator
Собирать руками, да есть такое, также как и nginx это пожалуй всё, что собирается руками из свеженького.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы