A veces, cuando tenemos un sitio que recibe una cantidad importante de visitas, nuestro servidor empieza a pedir socorro, ya que por ejemplo, en el caso de un sitio que utilice Drupal, Joomla, WP, o algun otro manejador de contenido, por cada pagina visitada tenemos cientos (sino miles) de consultas a nuestra querida y cascoteada base de datos.
Una buena opcion es la instalacion de un sistema de cacheo de objetos, que es a lo que vamos a dedicarnos ahora.
Memcached es un motor de cacheo de objetos en memoria, pensado para incrementar la velocidad de webs dinamicas (Segun Danga, su desarrollador).
El mismo es usado por gran cantidad de sitios reconocidos (siendo el ejemplo mas notorio Facebook, que utiliza una version tocada del mismo).
Pero ahora vamos a lo divertido! A levantar nuestro demonio memcache!!!
En este ejemplo usaremos CentOS 5.4 y memcached 1.1.4 que son las ultimas versiones al momento
Esto lo haremos, en nuestro caso, usando yum:
# yum install libevent libevent-dev
# wget http://memcached.googlecode.com/files/memcached-1.4.4.tar.gz
# tar xvvf memcached-1.4.4.tar.gz
# cd memcached-1.4.4
# ./configure [--enable-64bit]
Donde:
--enable-64bit -- Construimos una version de 64Bits de Memcached
# make
# make install
Si todo salio bien, una vez hecho esto tendremos el ejecutable de memcached en /usr/local/bin/memcached
Ahora tendremos que crear el /etc/init.d correspondiente para iniciarlo:
# vim /etc/init.d/memcached
#!/bin/sh
case "$1" in
start) /usr/local/bin/memcached -d -u root -m 512 -p 11211
;;
stop) killall memcached
;;
esac
Donde:
-d -- Iniciarlo como demonio
-u root -- Usuario con el que se iniciara el proceso de memcached
-m 512 -- Cantidad de memoria asignada al cache
-p 11211 -- Puerto de red al que memcached escuchara por comandos o peticiones
Luego de haber iniciado el demonio, debemos instalar la extension de PECL a fin de que Memcached pueda ser utilizado con PHP:
# wget http://pecl.php.net/get/memcache
# tar xvvf memcache
# cd memcache-X.X.X
# phpize
# ./configure
# make
# make install
Luego agregamos nuestro recien creadito modulo en nuestra configuracion de PHP, colocando las siguientes lineas en nuestro php.ini:
extension=memcache.so
Y voila, ya tenemos nuestro memcached instalado para que sea utilizado por, por ejemplo, Drupal y sus modulitos locos...
