AddThis Smart Layers

суббота, 17 сентября 2011 г.

Настройка APC кеширования на VPS

Несмотря на то, что Magento от версии к версии становится все менее требовательной к ресурсам сервера, для оптимизации ее работы очень желательно использовать "быстрый" серверный кеш.

Magento создана на базе Zend Framework и поддерживает 2-х уровневое кеширование, быстрый кеш (fast backend cache) и медленный кеш (slow backend cache). При этом, быстрый кеш может использовать практически любое из ныне популярных решений, таких как APC, Xcache, Memcache. Медленный же кеш может использовать файловую систему, либо базу данных.


По умолчанию в Magento не используется быстрое кеширование вообще, а в роли медленного кеша используется файловая система.

Сайты большинства наших клиентов работают на виртуальных серверах (VPS), что позволяет делать им любую нужную конфигурацию и оптимизацию за относительно небольшие деньги.

Оптимизацию мы делаем по нескольким направлениям:

  • Оптимизация вебсервера (Apache)
  • Оптимизация сервера баз данных (MySQL)
  • Оптимизация PHP (который настроен как FCGI)
  • Оптимизация настроек Magento
  • Оптимизация шаблона Magento
Сегодня речь пойдет об оптимизации PHP, а точнее о настройке кеширования для PHP на базе APC.

Маленькое уточнение - мы на все сервера устанавливаем панель управления cPanel. Возможно, она и занимает некоторое количество ресурсов сервера, но удобства, которые она предоставляет незаменимы.

По большому счету много делать не придется. Все делается через SSH.
  1. Установить библиотеку, без которой APC не установится
    # yum install pcre-devel
  2. Установить собственно APC
    # pecl install apc
  3. При установке модуль сам пропишет себя в файле настроек php.ini. Но нужно будет ручками дописать в нем несколько директив:

    [APC]
    apc.enabled = 1 # Turn APC cache on
    apc.optimization = 0 # Experimental keep off
    apc.shm_segments = 1 # Shared memory segments
    apc.shm_size = 128M # Max shared memory dependent on OS
    apc.ttl = 7200
    apc.user_ttl = 7200
    apc.num_files_hint = 1024
    apc.mmap_file_mask = /tmp/apc.XXXXXX
    apc.enable_cli = 1 # Allow command line php to function
    apc.cache_by_default = 1 # Enabled, 0 for filters
    apc.max_file_size = 10M # Maximum cached file size
    apc.stat = 1 # 1 for dev, 0 for production
    #apc.include_once_override = 1 # Use PHP5.3+ for include_once
  4. Скопировать файл статистики в корневую папку хоста пользователя (опционально):
    # cp /usr/local/lib/php/apc.php /home/userdir/public_html/
  5. Не забыть перезапустить вебсервер Apache
Дальше посмотрим что можно сделать с настройками модуля FCGI и с настройками PHP вообще.

Комментариев нет :

Отправить комментарий