Memcached es un demonio Unix escrito en C que expone una cantidad específica de espacio de memoria como una tabla hash en la red utilizando un protocolo dedicado de texto o binario. El protocolo permite un conjunto limitado de operaciones como set, get y delete, y también algunas operaciones atómicas más complejas como cas (comparar y set), incr, decr y append.
El proceso en sí es absolutamente ajeno a cualquier lógica de distribución y partición, por lo que es extremadamente simple, rápido y robusto. En realidad, toda la complejidad se traslada al cliente, que es el responsable de dirigir las peticiones a la instancia correcta de Memcached. Un uso muy común de Memcached es particionar datos en cada instancia, sin replicación.
Esta estrategia es válida cuando la cantidad de instancias N es grande, ya que la pérdida de una instancia implicará la pérdida de 1 / N de datos, lo que es aceptable en la mayoría de los casos para el almacenamiento en caché. En situaciones en las que dicha pérdida de datos no es aceptable, la replicación es posible ya que el cliente puede simplemente enviar sus peticiones a 2 instancias de Memcached en paralelo.
En el momento de escribir estas líneas, se utiliza ampliamente en producción en grandes organizaciones. Existen clientes para los principales lenguajes, como C/C++, Java, Python, Ruby y C#.
Para instalar memcached en un Servidor Virtual Privado (VPS) o en un servidor dedicado siga los siguientes pasos-
mkdir -p /root/fuente
cd /root/fuente
wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.i...
rpm -ivh rpmforge-release-0.3.6-1.el5.rf.i386.rpm
yum -y install libevent* ( necesario para el binario memcached )
yum -y install memcached* ( el binario memcached es necesario para libmemcached )
gem source -a http://gems.github.com
* La combinación de libmemcached-0.25.14 y la gema memcached-0.13 ha resultado ser una combinación estable que funciona, por lo que nos ceñiremos a esta combinación por ahora.
wget http://blog.evanweaver.com/files/libmemcached-0.25.14.tar.gz
tar -xzvf libmemcached-0.25.14.tar.gz
cd libmemcached-0.25.14
./configure && make && make install
cd /root/fuente
wget http://blog.evanweaver.com/files/memcached-0.13.gem
gem install memcached-0.13.gem
gem install memcache-client -version=1.6.3
RielesCarma ha estado trabajando en Ruby on Rails desde su etapa inicial y ha manejado más de 250 proyectos RoR. Con un equipo de más de 100 desarrolladores RoR versados en las últimas técnicas y herramientas, RailsCarma está bien preparada para ayudarle con todas sus necesidades de desarrollo. Si tiene alguna duda o consulta, no dude en ponerse en contacto con nosotros a través de nuestro Contáctenos página
Lea otros artículos relacionados :