Memcache es un sistema que funciona para acelerar servidores privados virtuales en caché la información del servidor. El programa permite asignar una cantidad específica de la ram del servidor hacia el almacenamiento en caché de datos consultados recientemente durante un cierto periodo de tiempo. Una vez que los datos se soliciten nuevamente, memcache acelera el proceso de recuperar mostrando la información en la memoria caché en lugar de generar el resultado de la base de datos.
Configuración
Los pasos de este tutorial requieren al usuario tener privilegios de root. Puedes ver cómo configurar eso en el Tutorial básico de los usuarios. Antes de empezar, es una buena idea que apt-get update para asegurarse de que todos los paquetes que descarguemos a los VPS son hasta la fecha.
sudo apt-get update
Además, deberías tener MySQL y PHP instalado en el servidor virtual.
sudo apt-get install mysql-server php5-mysql php5 php5-memcache
Instalar Memcache
Instalación de memcache lleva varios pasos.
Para empezar, instalar memcached vía apt-get.
sudo apt-get install memcached
El siguiente paso es instalar php-pear, el repositorio que almacena memcache.
sudo apt-get install php-pear
Si no tienes un compilador en el servidor, puede descargar build-essential para instalar memcache:
sudo apt-get install build-essential
Finalmente usar PECL (biblioteca de la comunidad de la extensión de PHP) para instalar memcache:
sudo pecl install memcache
¿Sí presionando entrar durante la instalación cuando se le solicita si desea “habilitar soporte de controlador memcache sesiones? [Sí]: “
Una vez que haya completado la instalación de memcache con PECL en el VPS, agregue memcached memcache.ini:
echo “extension=memcache.so” | sudo tee /etc/php5/conf.d/memcache.ini
Ahora estás listo para comenzar a usar Memcache.
Confirmar Memcache y ver las estadísticas
Memcache es descargado, puede comprobar que se ha instalado por buscando:
PS aux | grep memcache
Además, puedes ver las estadísticas de memcache tecleando:
echo “configuración de las estadísticas” | NC localhost 11211
Paso 3 — Cómo funciona Memcache
Memcache trabaja redireccionando código al primer intento de recuperar los datos desde la memoria caché antes de consultar la base de datos del servidor. La caché de Puebla al guardar los datos del servidor recientemente obtenido durante un cierto periodo de tiempo. En caché información solicitada recientemente, futuras consultas no tienen que pasar por el largo proceso de recuperación de la información en una base de datos y pueden, en cambio, acceder al mismo a través de la memoria caché.
La página de memcache muestra este código abreviado en su página web para resumir el proceso de memcache:
función get_foo(foo_id)
foo = memcached_get (“foo:”. foo_id)
retorno foo si define foo
foo = fetch_foo_from_database(foo_id)
memcached_set (“foo:”. foo_id, foo)
retorno foo
final
Un ejemplo Simple de Memcache
Esta sección establecerá un script php sencillo usar memcache para recuperar un único valor originalmente encontrado en una tabla de mysql.
Los siguientes pasos configurar un usuario mysql que puede acceder a la base de datos adecuado, crear una tabla de consulta e insertar el uno valor que probaremos en la nueva tabla de mysql.
Registro en mysql: mysql -u root -p y ejecutar los siguientes comandos:
Use prueba;
conceder en test.* a test@localhost identificados por ‘testing123’;
crear tabla ejemplo (id int, nombre varchar(30));
Introduzca valores del ejemplo (1, “new_data”);
salida;
Una vez que salieron del MySQL, crear el archivo de comandos de memcache:
Nano memtest.php
Ahora vamos a construir el script php paso a paso (todo el guión será al final de la sección):
Empezar por crear una nueva conexión persistente con memcache, que funciona en el puerto por defecto de memcache, 11211.
<? php
$meminstance = new Memcache();
$meminstance-> pconnect (‘localhost’, 11211);
El siguiente paso es conectar a la nueva base de datos mysql con el usuario que creamos anteriormente:
mysql_connect (“localhost”, “prueba”, “testing123”) o die(mysql_error());
mysql_select_db(“test”) o die(mysql_error());
Después de eso, seguir adelante y crear la consulta que se plantean para el servidor, así como proporcionar una clave para identificar esta acción en particular:
$query = “seleccione id de ejemplo en el que name = ‘new_data'”;
$querykey = “Clave”. MD5($query);
El script primero busca en la memoria caché para la respuesta a la consulta. Si el resultado no existe, el script redistribuye la pregunta a la base de datos original. Una vez que la consulta ha sido contestada por la base de datos original, el script almacena el resultado en memcache, usando el “set” comando–que guarda y permite al usuario designar el número de segundos que debe permanecer en la memoria caché (600 sería guardarlo en la memoria caché durante 10 minutos).
Cuando corremos el guión por primera vez, se nos informará que los datos fueron recogidos de la base de datos mysql. Sin embargo, como lo hace, almacena la información en la memoria caché, para que ejecute un segundo de la secuencia de comandos lo recupera la memoria caché y avisa al usuario. En 10 minutos se vacía la caché una vez más y ejecutando el script hará acceder a la base de datos una vez más.
Leave a Reply