<rmcreative>

RSS

Все заметки с тегами «PHP, APC»

Можно уточнить:

  1. Unable to allocate memory for pool

    14 сентября 2011

    Буквально двадцать минут назад забился кэш APC на форуме yiiframework.ru. Расследование проблемы заняло некоторое время. Итак, что же делать при получении Unable to allocate memory for pool.

    • Сливаем архив с APC.
    • Берём оттуда apc.php и заливаем на сервер.
    • Открываем apc.php в браузере и смотрим, есть ли у нас свободная память.
    • Если нет, меняем в php.ini значение apc.shm_size.
    • Рестартим PHP.

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

    14 комментариев
  2. PHP PECL под Windows

    7 мая 2011

    Если вы работаете с PHP под Windows или просто разрабатываете в Windows, как я, то наверняка вы знакомы со страничкой http://downloads.php.net/pierre/, которая временно-постоянно заменяет PECL для Windows и на которой можно найти свежие билды различных расширений.

    Конечно, найти там нужное не так просто, если не знать, что именно вам нужно. Если у вас последние версии PHP (начиная с 5.3.6) для Windows и если вы не собирали их самостоятельно, можно смело игнорировать всё что помечено как vc6 или x64. Далее смотрим, thread safe ли у вас версия PHP. Если не уверены, то можно посмотреть, имеется ли у вас php5ts.dll. Если да, версия thread safe и расширения надо выбирать только с пометкой ts. После этого обычно остаётся пара вариантов: стабильная версия и собранные из текущего svn/cvs кода.

    С некоторыми расширениями, конечно, приходится повозиться. Например, APC. После очевидного отбора остаётся прилично вариантов:

    • php_apc-20110109-5.3-vc9-x86.zip
    • apc-igbinary-fastlz-snap20110301-5.3-ts-vc9-x86.zip
    • php_apc-3.1.8-dev-+igbinary-1.1.2-dev-5.3-ts-vc9-x86.zip
    • php_apc-3.1-5.3-svn20101116-vc9-x86.zip
    • php_apc-3.1.5-5.3-vc9-x86.zip

    Мне было некогда разбираться, взял первый попавшийся php_apc-20110109-5.3-vc9-x86.zip и пару дней мучался с тем, что сервер время от времени просто переставал отвечать на запросы. Потом, методом исключения, нашёл виновника и проверил все остальные варианты:

    • php_apc-20110109-5.3-vc9-x86.zip — время от времени вешается.
    • apc-igbinary-fastlz-snap20110301-5.3-ts-vc9-x86.zip — сразу рушит апач.
    • php_apc-3.1.8-dev-+igbinary-1.1.2-dev-5.3-ts-vc9-x86.zip — стабильно.
    • php_apc-3.1-5.3-svn20101116-vc9-x86.zip — стабильно, но есть 3.1.5.
    • php_apc-3.1.5-5.3-vc9-x86.zip — стабильно, но есть 3.1.8.

    т.к. 3.1.8 оказалась вполне стабильной, остановился на ней. Кстати, внутри там:

    20 комментариев