У меня проблемы с производительностью при работе XCache и PHP5 на сервере Ubuntu 8.04. Некоторые приложения Zend Framework занимают около 12 МБ памяти. Общее время ответа до того, как Apache 2 сможет обслуживать страницу, составляет от 550 до 950 мс. Когда я включаю XCache, перезапускаю Apache 2 и обновляю страницу в первый раз, когда результаты будут такими же. Однако второй раз дает прибавку примерно на 50%. Страницы обслуживаются быстрее, а пиковая память составляет от 2 до 4 МБ.
Однако после дня использования XCache больше не приносит пользы. Пиковое использование памяти и время отклика возвращаются к старым значениям.
Я пробовал увеличить xcache.size
к 64M
(изначально было установлено 16M
). Это помогло, но только на пару часов. Я также установил xcache.count
к 4
так как сервер имеет четырехъядерный процессор. Однако, похоже, это тоже не помогло, поэтому я изменил настройки по умолчанию xcache.ttl
к 3600
и xcache.gc_interval
до 900. Надеясь, что старые записи кэша истекут. Все равно никакой разницы. Когда я вручную вызываю /etc/init.d/apache2 reload
кажется, что кеш сброшен, и все снова в порядке, всего на день или около того.
На сервере размещены несколько более легких веб-сайтов на основе PHP и несколько веб-сайтов на основе Zend Framework. Последние действительно выигрывают от увеличения производительности XCache.
Есть идеи, что попробовать дальше?
В конце концов это была проблема с памятью. Я увеличил size
к 194M
а также сделал gc_interval
короче, а также ttl
.
Мы размещаем несколько веб-сайтов на базе PHP (я думаю, около 100). Большинство из них очень легкие, но некоторые используют Zend Framework и другие их версии. У сервера достаточно памяти, поэтому увеличивайте размер кеша и возитесь с ttl
и gc_interval
сделал вещи намного лучше.
Еще один совет: настройте страницу администрирования XCache. Дает вам хороший обзор того, что кэшируется.