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

StackOverflow https://stackoverflow.com/questions/1772475

Вопрос

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

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

Это было полезно?

Решение

Насколько я знаю, до сих пор невозможно использовать кеш общей памяти с каким-либо кэшером 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).

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top