How to Install PHP-MemCache Module On CentOS
Posted by on 22 August 2011 06:13 AM
“MemCached” is a high-performance, distributed memory object caching system,
generic in nature, but intended for use in speeding up dynamic web applications by alleviating database load.
In this howto I explain how you can very easily install it and make it avaible in PHP.
You need to activate the RPMForge custom repository (formely known as Dag Wieers): http://dag.wieers.com/rpm/packages/rpmforge-release/
Grab your specific RPM and install it:
yum install --enablerepo=rpmforge memcached
Now memcached is installed.
You can test it:
memcached -m 512 -u nobody -vv
First, you start up the memcached daemon on as many spare machines as you have.
The daemon has no configuration file, just a few command line options, only 3 or 4 of which you'll likely use:
./memcached -d -m 2048 -l 10.0.0.40 -p 11211 -u nobody
This starts memcached up as a daemon, using 2GB of memory, and listening on IP 10.0.0.40,
port 11211. The -m switch specifies the amount of memory in megabytes.
The -l switch specifies the IP to listen on and finally the -p switch specifies the port to listen on.
The default port is 11211 and if your machine has just 1 IP you can omit the -l parameter.
In the above example I set the amount of memory to 2GB.
Of course you should use a sensible amount of memory.
Making your machine swap to disk sort of defeats the purpose of a memory cache daemon.
Note that it's perfectly fine to run the memcached daemon on another machine
than the one you're running your actual PHP project on. You could even set up
a machine totally dedicated to being a memory cache server. And if that's not even
enough you can set up multiple servers as well. The sky is the limit.
Note: if you try to start the memcached as root it will require you to
specify a user under which it should run with an additional -u nobody.
Installation of the PHP MemCache extension:
tar -xvf memcache-2.1.2.tgz
phpize && ./configure --enable-memcache && make
Copy the file memcache.so to the default module directory.
If you check your phpinfo() you should see a MemCache section appear.
You can now fully use the MemCache functionality in your PHP.