Guía para instalar Memcached en Linux
Memcached es una libreria que sirve para guardar en memoria objetos de la base de datos agilizando y reduciendo el número de peticiones que se realizan.
Memcached necesita de esta librería que podemos descargar en monkey.org, es posible que haya versiones más actuales. Pero con la 1.3 ya vamos bien.
wget http://monkey.org/~provos/libevent-1.3e.tar.gztar zxpfv libevent-1.3e.tar.gzcd libevent-1.3e./configuremake install
wget http://memcached.googlecode.com/files/memcached-1.2.8.tar.gztar zxpfv memcached-1.2.8.tar.gzcd memcached-1.2.8./configuremake install
Crear el usuario con el que se ejecutará el daemon memcached llamado con el mismo nombre.
adduser memcached
Para acceder a memcached desde cualquier sitio y poder ejecutar luego el daemon.
ln -s /usr/local/lib/libevent-1.3e.so.1 /lib/
Por ejemplo para arrancar una instancia del daemon: En este ejemplo asignamos 50 MB de memoria ram, desde el ip localhost y con el puerto recomendado 11211.
memcached -u memcached -d -m 50 -l 127.0.0.1 -p 11211
Para ver que funciona podemos abrir otra consola y ejecutar un telnet en el puerto 11211.
telnet 127.0.0.1 11211
Por supuesto también podemos ver que se está ejecutando en el sistema.
ps aux | grep memcached
Ahora memcached ya funciona correctamente por si solo. A continuación veremos cómo configurarlo para que funcione en PHP y luego como hacer que se ejecute siempre al arrancar el servidor.
No confundir con la extensión memcached que también está en http://pecl.php.net. Al momento de escribir esta guía la versión estable era la 2.2.5.
wget http://pecl.php.net/get/memcachetar zxvf memcache-2.2.5.tgz
cd memcache-2.2.5
./configuremakemake install
En el archivo php.ini debemos habilitar la extension añadiendo la siguiente línea en el apartado de extensiones.
extension=memcache.so
Luego reiniciamos el servidor Apache
/etc/init.d/httpd restart
Ya podemos ver en el php.ini que aparece la extensión instalada.
Hay que crear un script de inicialización en la carpeta /etc/init.d llamado por ejemplo memcached. Este script lo configuraremos para poder configurarlo con el chkconfig. Dentro escribimos:
#!/bin/bash# memcached Script de inicio para Memcached# chkconfig: 235 95 16# description: memcached# processname: memcached
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr:binmemcached -u memcached -d -m 50 -p 11211
Ahora cambiamos los permisos de este archivo para que sea ejecutable.
chmod 755 memcached
Finalmente lo agregamos a la lista de servicios de chkconfig:
chkconfig --add memcachedchkconfig --list memcached
Y ya podemos reiniciar el servidor. Cuando haya reiniciado veremos, utilizando el comando siguiente:
ps aux | grep memcached
que ya se ejecuta por si sola una instancia del demonio.