Web-server = Nginx + PHP, установка xcache

Материал из ИНФОвики
Перейти к: навигация, поиск

xcache — быстрый и эффективный кэш и оптимизатор байт-кода PHP. Грубо говоря, он позволяет в большинстве случаев избежать дорогостоящей компиляции PHP-скриптов в байт-код, сохраняя готовый код и, при возможности, оптимизируя.

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

cd /usr/local/src/install
tar jxf ../arc/xcache-1.3.2.tar.bz2
cd xcache-1.3.2/
phpize --clean && phpize
./configure \
 --prefix=/usr/local/xcache \
 --enable-xcache \
 --enable-xcache-encoder \
 --enable-xcache-decoder \
 --enable-xcache-optimizer 1> configure.out 2> configure.err
make 1> make.out 2> make.err
make install 1> make-install.out 2> make-install.err

После этого убедитесь, что в /usr/local/php/lib/php.ini есть строка

 [xcache-common]
 zend_extension = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/xcache.so"

Настройки модуля (в том же php.ini) могут быть разными, я привожу те настройки, что стоят лично у меня:

[xcache]
xcache.shm_scheme =        "mmap"
; to disable: xcache.size=0
; to enable : xcache.size=64M etc (any size > 0) and your system mmap allows
xcache.size  =               16M
; set to cpu count (cat /proc/cpuinfo |grep -c processor)
xcache.count =                 1
; just a hash hints, you can always store count(items) > slots
xcache.slots =                8K
; ttl of the cache item, 0=forever
xcache.ttl   =                 0
; interval of gc scanning expired items, 0=no scan, other values is in seconds
xcache.gc_interval =           0
 
; same as aboves but for variable cache
xcache.var_size  =            4M
xcache.var_count =             1
xcache.var_slots =            8K
; default ttl
xcache.var_ttl   =             0
 
xcache.var_maxttl   =          0
xcache.var_gc_interval =     300
 
xcache.test =                Off
; N/A for /dev/zero
xcache.readonly_protection = Off
; for *nix, xcache.mmap_path is a file path, not directory.
; Use something like "/tmp/xcache" if you want to turn on ReadonlyProtection
; 2 group of php won't share the same /tmp/xcache
; for win32, xcache.mmap_path=anonymous map name, not file path
xcache.mmap_path =    "/dev/zero"
 
xcache.coredump_directory =   ""
 
; per request settings
xcache.cacher =               On
xcache.stat   =               On
xcache.optimizer =           Off
 
[xcache.coverager]
; per request settings
; enable coverage data collecting for xcache.coveragedump_directory and xcache_coverager_start/stop/get/clean()
; functions (will hurt executing performance)
xcache.coverager =          Off
 
; ini only settings
; make sure it's readable (care open_basedir) by coverage viewer script
; requires xcache.coverager=On
xcache.coveragedump_directory = ""

Вернуться к основной статье.

комментарии поддерживаются Disqus