This website uses cookies

Our website, platform and/or any sub domains use cookies to understand how you use our services, and to improve both your experience and our marketing relevance.

Utilizar Memcached con PHP

Updated on July 18, 2025

6 Min Read

Memcached es un framework de caché de objetos. Se utiliza esencialmente para almacenar en caché las consultas a la base de datos, lo que permite que sitios web dinámicos como Drupal y WordPress sirvan las páginas más rápidamente. Además, puede disminuir significativamente el uso de recursos en un servidor web activo al reducir las llamadas a la base de datos.

Memcached es un sistema de caché de memoria distribuida. Acelera los sitios web que tienen grandes bases de datos dinámicas almacenando objetos de base de datos en Memoria Dinámica para reducir la presión sobre un servidor cada vez que una fuente de datos externa solicita una lectura. Una capa Memcached reduce el número de veces que se realizan peticiones a la base de datos.

Deja de perder el tiempo con los servidores

Cloudways se encarga de gestionar los servidores por ti para que puedas centrarte en crear grandes aplicaciones y mantener contentos a tus clientes.

En términos sencillos

Hagamos una analogía. Supón que eres gerente de una tienda de DVD que tiene montones de películas y juegos de distintos géneros, como ciencia ficción, historia y drama. Asignas algunas claves a las películas que los clientes piden mucho y las pegas en un mostrador para facilidad del encargado de la tienda. Ahora, estas claves asignadas pueden circular entre tus clientes y, cada vez que éstos soliciten esa clave concreta, tu tendero no tendrá que entrar en los detalles de las películas, sino que se limitará a buscarles los DVD. Esto aumentará el tiempo de respuesta de tu tendero. Todas las solicitudes para las que no se encuentren las claves se analizarán en detalle para averiguar qué películas solicitan los clientes.

El proceso de entrega será tan rápido como la asignación de las claves. Estas llaves actúan como amortiguadores de velocidad al desplazar todos los detalles que hay que buscar para obtener las películas.

Estas mismas cosas ocurren con el contenido que sirve tu página web. Memcached almacena los valores (v) con la clave (k) y recupera los valores (v) con la clave (k) sin siquiera analizar las consultas a la base de datos y se mantiene alejado de todas estas molestias.

¿Por qué Memcached?

Reduce el tiempo de respuesta de tus páginas web, lo que a su vez mejora la experiencia general del cliente. Un mejor tiempo de respuesta permite a los usuarios obtener datos sin problemas.

Prepárate para la actualización de Core Web Vitals

Ebook para acelerar tu sitio web antes de que empieces a perder tráfico.

Gracias

Tu lista está de camino a tu bandeja de entrada.

¿Cómo configurar Memcached?

Para activar las extensiones Memcache de PHP, tienes que compilar PHP utilizando la opción –enable-Memcache al compilar, y configurarlo desde el código fuente. En las dispersiones basadas en Debian, puedes utilizar el paquete php-Memcache. Para establecer opciones de configuración global en tiempo de ejecución, especifica los valores de las opciones de configuración dentro de tu registro php.ini.

Si eres usuario de Cloudways, no tienes que preocuparte de todas esas molestias, ya está todo hecho para ti. Desplázate hacia abajo para saber cómo puedes configurar tu aplicación PHP con Memcached.

Configurar la aplicación PHP para Memcached:

Bien, empecemos por comprobar los requisitos previos. No te preocupes, es cuestión de unos pocos clics:

  • Asegúrate de que tienes un servidor activo en Cloudways. Haz clic aquí para acceder a tu propio servidor en la nube.
  • Asegúrate de que has lanzado una aplicación PHP. Si no es así, puedes seguir esta guía para configurar tu PHP Stack con Cloudways.

    Paso 1:

    • Asegúrate de que tienes Memcached funcionando, puedes comprobarlo escribiendo el siguiente comando en el terminal.
    $ps aux | grep memcached

MemCached con PHP

También puedes probar lo siguiente

	$netstat -ap | grep 11211
  • Ahora que ya funciona, veamos nuestra página phpinfo() para comprobar la versión de Memcached que estamos utilizando.
  • Pega el siguiente código en tu index.php
<?php
phpinfo();
?>

Ahora visita tu sitio y desplázate hacia abajo hasta encontrar Memcached. Verás algo como esto

MemCached con PHP

Juguemos con nuestro MemCached instalado y veamos qué podemos hacer con él. Guardaremos un Valor (V) en nuestro MemCached y asociaremos este Valor a una Clave (K). Llamaremos a nuestra Clave «Bilbo» y nos traerá el Valor («Anillo»). Aquí tienes un pequeño código:

<?php
$mem_var = new Memcached();
$mem_var->addServer("127.0.0.1", 11211);
$response = $mem_var->get("Bilbo");
if ($response) {
&nbsp; &nbsp; echo $response;
} else {
&nbsp; &nbsp; echo "Adding Keys (K) for Values (V), You can then grab Value (V) for your Key (K) \m/ (-_-) \m/ ";
&nbsp; &nbsp; $mem_var->set("Bilbo", "Here s Your (Ring) Master stored in MemCached (^_^)") or die(" Keys Couldn't be Created : Bilbo Not Found :'( ");
}
?>

Cada vez que llamemos al Bilbo, Bilbo nos traerá la Llave. Guarda el Código en tu Index.php y sal.

Ahora visita tu aplicación en un navegador. Verás algo como esto

MemCached con PHP

Y ahora refresca:

MemCached con PHP

Ahora volvamos a las cosas serias :D, conectaremos MySql sin código PHP y veremos cómo podemos sacar provecho de Memcached.

También te puede gustar: Cómo conectar la base de datos MySQL con sitios web PHP

Primero, inicia MySql con CLI. Y crea una Tabla como se indica a continuación. Recuerda que tus credenciales de MySql se proporcionan en la página de configuración de tu servidor.

$mysql -u <user_name> -p
mysql> <enter Password here>
Use <database name> CREATE TABLE sample_data (id int, name varchar(30));
INSERT INTO sample_data VALUES (1, "some_data");
exit

Hemos creado una tabla sencilla. Pasemos al siguiente paso. Crea un nuevo archivo PHP. Ponle el nombre memtest.php

Y metamos estos códigos dentro.

<?php
$memtest = new Memcached();
$memtest->addServer("127.0.0.1", 11211);
?>

Igual que antes

<?php
$memtest = new Memcached();
$memtest->addServer("127.0.0.1", 11211);
mysql_connect("localhost", "<username>", "password") or die(mysql_error());
mysql_select_db("<username>") or die(mysql_error());
?>

A continuación, haremos una consulta sencilla para obtener el Valor V de la BD y crearemos una Clave (K) que se almacenará en Memcached.

A continuación, crearemos una variable $querykey para almacenar la clave para que Memcached recuerde nuestro valor.

Vamos a crear una clave con el nombre «CLAVE» y luego le añadiremos la función de suma de comprobación md5 (un método de hashing). Esto generará siempre una clave única que nos ayudará a gestionar el gran conjunto de datos. También garantiza que una consulta coincidente producirá la misma clave para solicitudes posteriores.

A continuación, haremos un eco del resultado y veremos si procede de Memcached o de una simple búsqueda.

<?php
$memtest = new Memcached();
$memtest->addServer("127.0.0.1", 11211);
$conn = mysql_connect("localhost", "tzvsqktpzm", "XWwgPDZ52R") or die(mysql_error());
mysql_select_db("tzvsqktpzm") or die(mysql_error());
$query = "SELECT ID FROM sample_data WHERE name = 'some_data'";
$retval = mysql_query( $query, $conn );
$result = mysql_fetch_array($retval, MYSQL_ASSOC);
$querykey = "KEY" . md5($query);
$memtest->set($querykey, $result);
$result2 = $memtest->get($querykey);
if ($result2) {
print "<p>Data was: " . $result2['ID'] . "</p>";
print "<p>Caching success!</p><p>Retrieved data from memcached!</p>";
}
?>

Ahora almacenaremos en caché durante unos segundos, tendrás que cambiar un poco en función de tu uso. Es sólo para ver los resultados rápidos sin reiniciar el Memcached.

MemCached con PHP

Alojamiento PHP Gestionado Supercharged – Mejora la velocidad de tu aplicación PHP en un 300%.

– ¿Cuál es la diferencia entre Memcache y Memcached?

Tanto Memcache como Memcached tienen una diferencia fundamental, a saber, «al almacenar el valor. Memcache considera cada valor como una cadena, mientras que Memcached almacena el tipo original del valor».

– Cómo configurar Memcached PHP

  • Descargar Memcached.
  • Instala Memcached y ejecútalo en tu ordenador.
  • Confirma si tu código PHP está compilado con Memcached.
  • Apila la extensión memcached desde dentro de PHP, y reinicia el servidor web.
  • Memcached debería funcionar ahora.
Share your opinion in the comment section. COMMENT NOW

Share This Article

Start Growing with Cloudways Today.

Our Clients Love us because we never compromise on these

Shahzeb Ahmed

Un creativo de día (con una taza de té) y un creativo de noche. Ahmad Kamran es redactor de contenidos estacionales y Ejecutivo de Marketing Senior en Cloudways. Puedes encontrarle en su escritorio escribiendo, elaborando estrategias o jugando. Y en caso de que no puedas encontrarle aquí, estará en la montaña o junto a la orilla del río.

×

Webinar: How to Get 100% Scores on Core Web Vitals

Join Joe Williams & Aleksandar Savkovic on 29th of March, 2021.

Do you like what you read?

Get the Latest Updates

Share Your Feedback

Please insert Content

Thank you for your feedback!

Do you like what you read?

Get the Latest Updates

Share Your Feedback

Please insert Content

Thank you for your feedback!

Want to Experience the Cloudways Platform in Its Full Glory?

Take a FREE guided tour of Cloudways and see for yourself how easily you can manage your server & apps on the leading cloud-hosting platform.

Iniciar mi recorrido