LINUX.ORG.RU

Сообщения hjack

 

Apache съедает всю оперативку

Здравствуйте!

Есть в наличии VPS:

  • CentOS 6.3 64x
  • Nginx 1.2.3 (прокси)
  • Apache 2.2.22
  • PHP 5.3.27 (PHP как модуль Apache)
  • 3000МБ ОЗУ

На этом сервере крутится сайт, на котором нужно делать выгрузку базы данных в excel файл. Для этого используется пакет Spreadsheet_Excel_Writer.

И вот тут есть проблема. Во время работы скрипта, Apache сжирает всю оперативную память (3ГБ), при том, что в настройках PHP стоит ограничение на 512МБ. И ещё интересно, что при вызове memory_get_peak_usage(true), внутри работающего скрипта, результат всегда меньше 300МБ.

Так почему же Apache съел всю память?

Проблему удалось локализовать до файла «Spreadsheet/Excel/Writer/Workbook.php» (который из комплекта Spreadsheet_Excel_Writer). В этом файле есть функция _calculateSharedStringsSizes() (залил её на пастбин), в которой есть цикл, начинающийся со строки 63 (если смотреть на пастбине), так вот, если цикл удалить, то утечки памяти не будет (про результат работы скрипта речи не идёт)!

Я даже сделал копию сайта у себя на виртуальной машине, с теми же параметрами (только без Nginx'а в качестве прокси). Скрипт отработал как надо, и Apache не требовал более 400МБ вообще. Что за чудеса?!

Подскажите, пожалуйста, куда копать?

 , , ,

hjack
()

Проблема с установкой Xdebug на CentOS

Есть сервер:

  • CentOS 5.9 x64
  • PHP 5.3.25 x64
  • php-common 5.3.25 x64

Пытаюсь установить Xdebug:
#yum install php-pecl-xdebug-2.1.2
на что мне yum говорит, что есть зависимость:
Installing for dependencies:
php-common i386 5.2.17-1.el5.art atomic
Но у меня же более старшая версия, почему предлагает откатится?!
Пытался поставить более позднюю версию Xdebug 2.2.3, так там в зависимостях вообще полный комплекс php 5.4, а обновлять PHP'ху желания нету.
Есть какой-нибудь выход из подобной ситуации?

P.S. На другом сервере, который отличается только системой:
CentOS 6.3 x64
Спокойно встал Xdebug, правда 2.1.4 версии.

 , ,

hjack
()

RSS подписка на новые темы