Файл или APC Cache Engine в CakePHP? - PullRequest
2 голосов
/ 05 августа 2011

CakePHP предлагает поддержку APC, XCache и Memcache в дополнение к стандартному движку кэширования.У меня были некоторые проблемы с моим приложением, время от времени кеширующим неработающие страницы без какой-либо известной причины, я решил попробовать другой движок, чтобы увидеть, если это что-то меняет.

XCache и Memcache, похоже, что они могут занять немногонемного больше настроек, но APC выглядит буквально как случай изменения одной строки в core.php.У меня вопрос, где я могу найти информацию о , почему я должен выбрать APC вместо двигателя по умолчанию?Каковы плюсы и минусы?На самом деле это не может быть случай «просто попробуйте их обоих и посмотрите, чувствует ли один себя лучше, чем другой» (не так ли?), Но базовый анализ не выявил простой разбивки различных достоинств механизмов кэширования вCake.

Может кто-нибудь объяснить мне таинственную работу движков кеша в Cake?Или указать мне на ресурс, который делает?Бонусные баллы, если XCache и Memcache также сравниваются, потому что они могут быть моим следующим портом захода ...

1 Ответ

5 голосов
/ 05 августа 2011

Файлы на диске:

  • Не совсем быстро;и одновременный доступ не очень хорош, если несколько процессов пытаются одновременно читать / писать
  • Локально для одного сервера (если у вас несколько серверов, вам придется хранить файлы накаждый из них - медленная NFS)
  • Но у вас достаточно места


APC находится в памяти:

  • Действительно быстро
  • Но у вас меньше места
  • И он также локальн для каждого сервера


memcached находится в памяти сетевого кластера:

  • довольно быстро (немного меньше, чем у APC; но все еще довольно быстро)
  • Совместно используется всеми вашими серверами: каждый элемент должен кэшироваться только один раз,даже если у вас есть несколько веб-серверов.
  • В вашем кластере memcached может быть несколько серверов (что означает практически неограниченный размер кэша)
...