Можно ли разделить кэш APC между несколькими процессами PHP, работающими как fastcgi/fcgid?

Я запускаю LAMP Box с PHP, работающим как fcgid. APC установлен и работает хорошо. Однако каждый процесс PHP получает свой кэш. Это проблема, потому что было бы гораздо разумнее иметь 10 процессов PHP с 300 МБ общего кэша APC, чем 10 процессов PHP, каждый из которых имел избыточный 30 МБ общего кэша APC.

8 месяцев назад на эту тему была предыдущая ветка ( Как разделить кэш APC между несколькими процессами PHP при работе под FastCGI?), И мне интересно, были ли какие-либо события в этой области с тех пор.

3 ответа

Решение

Насколько я знаю, до сих пор невозможно использовать кеш общей памяти с любым кешем PHP среди нескольких процессов... во всяком случае, если вы не находитесь под чрезмерно большой нагрузкой, вы, вероятно, подойдете к отдельным кешам, так как они будут заполнены довольно быстро. И, эй, оперативная память сейчас дешевая!

Я читал об этом всего несколько минут назад в отслеживании ошибок PHP. https://bugs.php.net/bug.php?id=57825 это исправлено, но вы должны использовать spawnfcgi или php-fpm http://php-fpm.org/

Цитируется из Рамуса

Он отлично работает, если вы используете spawnfcgi или php-fpm. Любой менеджер процессов, который запускает родительский процесс и порождает дочерние процессы, будет работать нормально.

Оказывается, это все еще невозможно, если вы действительно используете разные процессы: http://pecl.php.net/bugs/bug.php?id=11988 (обновлено 13.11.2009 автором соответствующей части) APC).

Другие вопросы по тегам