How to Install XCache for PHP

XCache is a fast, stable ​PHP opcode cacher that has been tested and is now running on production servers under high load. It is tested (on linux) and supported on all of the latest ​PHP release branches such as PHP_5_1 PHP_5_2 PHP_5_3 PHP_5_4. ThreadSafe/Windows is also perfectly supported. It overcomes a lot of problems that has been with other competing opcachers such as being able to be used with new ​PHP versions.

Download Latest Stable xcache Release

cd /usr/local/src/

http://xcache.lighttpd.net/pub/Releases/3.0.3/xcache-3.0.3.tar.gz

tar -zxvf xcache-3.0.3.tar.gz

cd xcache-3.0.3

Use phpize command to prepare xcache as a PHP extension for compiling, if you dont know where is phpize, use find -name phpize.

phpize

Configure, compile and install xcache

./configure –enable-xcache

make

make install

You will received the following extension directory details.

Installing shared extensions:     /usr/local/lib/php/extensions/no-debug-non-zts-20090626/

open php.ini and add xcache.so entries.

vi /usr/local/lib/php.ini

extension=”xcache.so”

restart apache webserver.

/etc/init.d/httpd restart

Thats all!! you can verify that xcache modules in your php.

root@server [/]# php -v
PHP 5.3.25 (cli) (built: Jul  9 2013 23:42:49)
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2013 Zend Technologies
with XCache v3.0.3, Copyright (c) 2005-2013, by mOo
with the ionCube PHP Loader v4.2.2, Copyright (c) 2002-2012, by ionCube Ltd., and
with XCache Cacher v3.0.3, Copyright (c) 2005-2013, by mOo
with Suhosin v0.9.33, Copyright (c) 2007-2012, by SektionEins GmbH

If you still need to optimize the xcache and configure admin settings then use the following settings in your php.ini file.

[xcache.admin]
xcache.admin.user   = "admin"
;how to create md5 pwd: echo -n "password"| md5sum
xcache.admin.pass   = "5f4dcc3b5aa765d61d8327deb882cf99"

[xcache]
; Change xcache.size to tune the size of the opcode cache
; to disable: xcache.size=0
; to enable : xcache.size=64M etc (any size > 0) and your system mmap allows
; someone said, if >=64 will get problem

xcache.size         = 32M
xcache.shm_scheme   = "mmap"
; set to cpu count (cat /proc/cpuinfo |grep -c processor)

xcache.count        = 4
; 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

; Change xcache.var_size to adjust the size of variable cache
; same as aboves but for variable cache, if you have not used xcache function in script,forget it

xcache.var_size     = 8M
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 = On
; 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    = "/tmp/xcache"
; leave it blank(disabled) or "/tmp/phpcore/"
; make sure it’s writable by php (without checking open_basedir)

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    = On
; ini only settings
; make sure it’s readable (care open_basedir) by coverage viewer script
; requires xcache.coverager=On

xcache.coveragedump_directory = ""
  • 0 Users Found This Useful
Was this answer helpful?

Related Articles

How to disable user Custom PHP.INI files

Disable user unwanted custom php.ini file in your cpanel server. suPHP is a module that enhances...

How To Install eAccelerator on cpanel

eAccelerator is a free, open-source piece of software used to speed up PHP loading on websites....

Test MySQL database connection with php script

You can use the following php script which is used to test mysql database connection on your...

Important php security settings

PHP is a server side scripting language. You can embed PHP code in your web pages along with...

Enable Custom php.ini for Fast CGI

With fast-cgi, custom php.ini needs to be in the cgi-bin folder. 1) Move php.ini to cgi-bin...

Powered by WHMCompleteSolution