Установка и настройка XCache
Оптимизация работы вебсерверов, ускорение их работы тема очень интересная, возможности развернуться в этой области предостаточно, инструментов тоже хватает. XCache относится к средствам ускорения работы PHP. Устанавливается XCache как дополнительный модуль PHP и служит для кеширования результатов выполнения скриптов в шаред мемори. По сравнению с eAccelerator, XCache показывает более ощутимые результаты, но в проектах, где объемы кеша очень большие — не совсем подходит. Все таки оперативная память не бесконечна. Установим XCache из портов:
cd /usr/ports/www/xcache/ make install clean |
При установке доступен диалог настройки сборки, с единственным пунктом Enable code coverage dumper, по умолчанию она включена и служит для определения.предотвращения переполнения памяти.
По окончании установки, нужно скопировать файл настройки xcache.ini в /usr/local/etc/php/:
cp /usr/local/share/examples/xcache/xcache.ini /usr/local/etc/php/ |
и немного исправить.
У меня получился такой файл настроек:
[xcache-common] extension = xcache.so #Включим админ интерфейс [xcache.admin] xcache.admin.enable_auth = On xcache.admin.user = "admin" #В качестве пароля укажем md5 хеш, создать его можно с #помощью команды md5 -s "ваш пароль" xcache.admin.pass = "XXXXXX" [xcache] xcache.shm_scheme = "mmap" #Выделим для кеша 128 мегабайт xcache.size = 128M xcache.count = 1 xcache.slots = 8K xcache.ttl = 0 xcache.gc_interval = 0 xcache.var_size = 0M xcache.var_count = 1 xcache.var_slots = 8K xcache.var_ttl = 0 xcache.var_maxttl = 0 xcache.var_gc_interval = 300 xcache.test = Off xcache.readonly_protection = Off xcache.mmap_path = "/dev/zero" xcache.coredump_directory = "" xcache.cacher = On xcache.stat = On xcache.optimizer = On [xcache.coverager] xcache.coverager = On xcache.coveragedump_directory = "" |
Настройка самого XCache закончена, остается сделать доступным админ интерфейс. Для этого я у себя скопировал /usr/local/share/examples/xcache/admin в документ рут своего вебсервера www.hilik.org.ua
После этого админ интерфейс станет доступным по URL http://www.hilik.org.ua/admin/
Конечно через этот интерфейс доступна только статистика, но все равно, это полезная функция.
Да и авторизация определена вами в xcache.ini.
By CyberMax, 09.05.2010 @ 17:13
Сделал в xcache.ini настройку xcache.size = 128M как у вас написано и сайт уходит в «502 Bad Gateway». Установлен Nginx может быть из-за этого?
Кроме того команда php -v кроме стандартного вывода выдает:
php -v
/dev/zero: No space left on device
Failed creating file mappping
PHP Fatal error: Failed creating file mappping in Unknown on line 0
PHP Fatal error: XCache: Cannot create shm in Unknown on line 0
Segmentation fault
В общем сделал пока значение xcache.size стандартное, так ошибок не появляется. Но всё-таки интересно как это можно исправить?