2016-06-29 4 views
2

Мысль начинается с этого вопроса в режиме php-cli:Разница между PHP-кли и режимом PHP-FPM в отношении APC/APCu

PHP apc/apcu cache do not keep intermediate result while shmop do, why?

В этом случае APC/APCu не кэшировать промежуточный результат.

Однако, APC/APCu делать кеширование промежуточного результата так же, как shmop, когда под php-fpm режиме. Итак, какая разница между php-cli и php-fpm, когда в отношении APC/APCu?

ответ

6

php-fpm ist работает в своем собственном процессе все время. Он может использовать apc, поскольку он непрерывно использует ram по нескольким запросам. Память освобождается только через сборщик мусора или если вы убиваете процесс fpm. Но процесс CLI живет только для одной команды, и когда его законченная память освобождается. Таким образом, apc не может хранить данные над вызовами severel cli, поскольку он выделяет новую память в каждом случае.

+0

Что касается обычного режима php-cgi? – lulyon

+0

Невозможно использовать APC в обычном php cgi. Использование fpm или php-модуля apache - единственный способ, которым я знаю, использовать apc. – Crofly

+0

отличный ответ, спасибо. – lulyon