LINUX.ORG.RU
ФорумAdmin

Очень большой расход памяти CENTOS


0

0

Такая проблема. После нескольких часов работы сервер приходится ребутать, из-за того, что начинает жутко тормозить. # uptime 18:01:30 up 15:43, 1 user, load average: 0.00, 0.00, 0.00

# free -m total used free shared buffers cached Mem: 7975 6076 1898 0 106 488 -/+ buffers/cache: 5481 2493 Swap: 4102 2 4100

Работает на сервере всего 1 сайт, ниче не могу понять. Подскажите, пожалуйста, куда копать?


Ответ на: комментарий от GotF

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

Mem: 8166452k total, 6832732k used, 1333720k free, 109548k buffers

Swap: 4200888k total, 2484k used, 4198404k free, 500456k cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND

4444 apache 15 0 1403m 583m 12m S 0.0 7.3 0:02.22 httpd

4468 apache 15 0 1403m 582m 12m S 0.0 7.3 0:02.72 httpd

4435 apache 15 0 1403m 581m 12m S 0.0 7.3 0:02.10 httpd

4438 apache 15 0 1403m 580m 12m S 0.0 7.3 0:02.68 httpd

4470 apache 15 0 1403m 580m 12m S 0.0 7.3 0:02.16 httpd

4458 apache 15 0 1403m 580m 12m S 0.0 7.3 0:02.44 httpd

4456 apache 15 0 1403m 580m 12m S 0.0 7.3 0:02.33 httpd

4441 apache 15 0 1403m 579m 11m S 0.0 7.3 0:02.20 httpd

4430 apache 15 0 1403m 579m 11m S 0.0 7.3 0:02.28 httpd

4721 mysql 15 0 501m 79m 4296 S 0.0 1.0 0:10.57 mysqld

4466 apache 15 0 738m 74m 12m S 0.0 0.9 0:01.82 httpd

4433 apache 15 0 732m 66m 11m S 0.0 0.8 0:01.08 httpd

4471 apache 15 0 719m 57m 11m S 0.0 0.7 0:00.96 httpd

4455 apache 15 0 713m 52m 11m S 0.0 0.7 0:01.18 httpd

4427 apache 15 0 702m 46m 14m S 0.0 0.6 0:01.64 httpd

4469 apache 15 0 702m 43m 11m S 0.0 0.5 0:01.21 httpd

4463 apache 15 0 699m 41m 12m S 0.0 0.5 0:01.15 httpd

4474 apache 15 0 701m 41m 11m S 0.0 0.5 0:00.98 httpd

4467 apache 15 0 699m 40m 12m S 0.0 0.5 0:01.74 httpd

4453 apache 15 0 700m 40m 11m S 0.0 0.5 0:01.00 httpd

4446 apache 15 0 699m 40m 11m S 0.0 0.5 0:07.31 httpd

4461 apache 15 0 699m 39m 11m S 0.0 0.5 0:01.14 httpd

4464 apache 15 0 699m 39m 11m S 0.0 0.5 0:01.27 httpd

4454 apache 15 0 699m 39m 11m S 0.0 0.5 0:01.19 httpd

4434 apache 15 0 699m 39m 11m S 0.0 0.5 0:01.07 httpd

4457 apache 15 0 699m 39m 11m S 0.0 0.5 0:00.83 httpd

4432 apache 15 0 685m 32m 16m S 0.0 0.4 0:02.05 httpd

4459 apache 15 0 690m 31m 11m S 0.0 0.4 0:00.66 httpd

4428 apache 15 0 689m 30m 11m S 0.0 0.4 0:00.77 httpd

4436 apache 15 0 689m 30m 12m S 0.0 0.4 0:00.84 httpd

4472 apache 15 0 688m 28m 11m S 0.0 0.4 0:01.40 httpd

4449 apache 15 0 687m 28m 11m S 0.0 0.4 0:00.58 httpd

4443 apache 15 0 688m 28m 11m S 0.0 0.4 0:00.90 httpd

4451 apache 15 0 688m 28m 12m S 0.0 0.4 0:01.02 httpd

4448 apache 15 0 686m 27m 11m S 0.0 0.3 0:02.48 httpd

4450 apache 15 0 688m 26m 11m S 0.0 0.3 0:01.05 httpd

4437 apache 15 0 688m 26m 11m S 0.0 0.3 0:01.02 httpd

4429 apache 15 0 685m 26m 11m S 0.0 0.3 0:00.81 httpd

4465 apache 15 0 685m 25m 11m S 0.0 0.3 0:01.07 httpd

4460 apache 15 0 685m 25m 11m S 0.0 0.3 0:00.66 httpd

4475 apache 15 0 684m 25m 11m S 0.0 0.3 0:01.54 httpd

4462 apache 15 0 684m 24m 11m S 0.0 0.3 0:00.68 httpd

4473 apache 15 0 684m 24m 11m S 0.0 0.3 0:00.31 httpd

4452 apache 15 0 684m 24m 11m S 0.0 0.3 0:00.52 httpd

4431 apache 15 0 685m 24m 11m S 0.0 0.3 0:00.77 httpd

4447 apache 15 0 684m 23m 10m S 0.0 0.3 0:00.72 httpd

4445 apache 15 0 684m 23m 10m S 0.0 0.3 0:01.21 httpd

4440 apache 15 0 684m 23m 10m S 0.0 0.3 0:00.61 httpd

вывод htop, чет не могу в текст конвертнуть, не подскажете как?

aha_r
() автор топика
Ответ на: комментарий от aha_r

Да htop и не обязательно. Я имел ввиду, что когда память заканчивается, надо бы выяснить, какой процесс так сильно её занимает. А там уже и думать, что делать дальше.

GotF ★★★★★
()

ps --sort rss -eo rss,cmd

покажите что там в конце будет ( 5 - 10 строк ), это самые жадные до памяти процессы

Sylvia ★★★★★
()
Ответ на: комментарий от hizel

ps --sort rss -eo rss,cmd 83080 /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/mysql --user=mysql --pid-file=/var/run/mysqld/mysqld.pid --skip-external-locking --port=3306 --so

593336 /usr/sbin/httpd

593656 /usr/sbin/httpd

594492 /usr/sbin/httpd

594544 /usr/sbin/httpd

594836 /usr/sbin/httpd

595308 /usr/sbin/httpd

597036 /usr/sbin/httpd

597716 /usr/sbin/httpd

679088 /usr/sbin/httpd

вот вывод присланной команды.

Да, я тоже грешу на пхп, на сервере установлен ISPManager. Вот вывод php -m: # php -m [PHP Modules] bz2 calendar ctype curl date dbase exif filter ftp gd gettext gmp hash iconv ionCube Loader json libxml mbstring mcrypt mysql mysqli openssl pcntl pcre readline Reflection session shmop SimpleXML sockets SPL standard tokenizer XCache xml Zend Optimizer zip zlib

[Zend Modules] Zend Optimizer the ionCube PHP Loader

Какой модуль может делать такое? Грешат на filter, но его не получается выключить, если просто so смувить из директории расширений, то отдается белый лист, вместо нужной страницы сайта

aha_r
() автор топика
Ответ на: комментарий от hizel

Нет, это dedicated. Ну в таком случае только на пхп скрипты и остается думать.

В пхп.ини вот такое:

# cat /etc/php.ini| grep memory

memory_limit = 512M ; Maximum amount of memory a script may consume

aha_r
() автор топика
Ответ на: комментарий от aha_r

memory_limit = 512M ; Maximum amount of memory a script may consume

Зачем столько много памяти скрипту, которые должен всего-навсего подготовить к выводу текст? Даже если обработка изображений, то это гигантский объем памяти.

azure ★★
()
Ответ на: комментарий от hizel

joomla? на кол? чет не могу поверить.

попробовать отключить всякие расширения в админке...

aha_r
() автор топика
Ответ на: комментарий от aha_r

имеет ли место какая-то серьезная обработка данных на пхп? Не совсем понятно, куда могут использоваться такие гигантские объемы памяти. По-моему тут надо глубоко ковырять пхп-код на предмет выявления быдлокода.

azure ★★
()
Ответ на: комментарий от aha_r

может где то есть бесконечный цикл...но врятли конечно, но может...
а как быстро обычно открываются странички ? ищи самую долго открывающуюся, потом смотри где на ней проблема
да, и, что то процессов апача много, может ддос?
хотя мемори_лимит говорит об обратном...

kam ★★
()
Ответ на: комментарий от kam

да и, как я помню, если уменьшить мемори лимит, то скрипт начинает ругаться на определенную строку в файле, которой не хватает места в памяти, гляди в ту сторону

kam ★★
()
Ответ на: комментарий от kam

да там пишутся строки в которых возникает ошибка. в файле который предназначен для работы с БД. joomla/database/database/mysql.php on line 462.

aha_r
() автор топика
Ответ на: комментарий от aha_r

единственное что не стандартное.

а все остальное - это ЧТО? нестандартное - имелось ввиду «самописное»?

azure ★★
()
Ответ на: комментарий от aha_r

значит ползем в файл joomla/database/database/mysql.php on line 462

и делаем на предыдущей строке echo()
всего скуль запроса...мб что то запрос не то возвращает...или там, лимиты в базе огромные...я даже не представляю сколько строк надо вытянуть из базы чтобы 500метров оперативы забить

kam ★★
()
Ответ на: комментарий от kam

с помощью джумловой фитчи отладки, было выяснено, что на открытие index.php делается 184 запроса в БД.

aha_r
() автор топика
Ответ на: комментарий от kam

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

aha_r
() автор топика
Ответ на: комментарий от kam

мб криво настроен Apache.

<IfModule prefork.c>

StartServers 50

MinSpareServers 15

MaxSpareServers 256

ServerLimit 512

MaxClients 512

MaxRequestsPerChild 1000

</IfModule>

aha_r
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.