WordPress funciona como un sistema de gestión de contenidos (CMS) de código abierto, lo que facilita la gestión de contenidos sin la necesidad de adquirir dominio de ningún lenguaje de programación web. Mediante la sencilla adición de texto, imágenes y vídeos, se puede construir y publicar posteriormente un sitio web o un blog en Internet. La base operativa de WordPress reside en PHP y una base de datos MySQL.
En el proceso de creación de un sitio web impulsado por WordPress, la incorporación de temas y complementos es común para personalizar los atributos del contenido y la estética visual. Esto facilita el aumento progresivo de las funcionalidades del sitio web a través de componentes complementarios, incluidas extensiones de terceros como SEO y análisis. Las interdependencias de estos temas y complementos encuentran su repositorio dentro de una base de datos MySQL que sirve como anfitrión del contenido de la página web.
Por el contrario, Redis constituye un repositorio de estructura de datos en memoria de código abierto, preparado para funcionar como un sistema de almacenamiento en caché. Este software funciona como un servicio en segundo plano, facilitando el almacenamiento en caché y la retención de datos dentro de la memoria del sistema. En consecuencia, esta estratagema contribuye a aumentar los tiempos de respuesta del servidor y la velocidad general del sitio web.
La próxima guía instructiva está diseñada para impartir los conocimientos necesarios para el establecimiento y configuración de la caché de objetos de Redis dentro de su sitio web o blog de WordPress. Sin embargo, antes de profundizar en los detalles de la configuración, se justifica una exploración de la mecánica operativa de WordPress y Redis, junto con la justificación de su utilización simbiótica.
Create Amazing Websites
Con el mejor generador de páginas gratuito Elementor
Empezar ahoraCómo funciona Redis
Considere un escenario en el que una aplicación web está operativa en un servidor y utiliza una base de datos como MySQL para su funcionamiento. La aplicación web requiere la recuperación de registros específicos de esta base de datos. La ejecución de este tipo de consultas va acompañada de un notable retraso en el suministro de los registros solicitados. Cabe señalar que los períodos de espera prolongados, superiores a un minuto, para la recuperación de datos pueden conducir potencialmente a una experiencia de usuario subóptima.
Sin embargo, vale la pena señalar que Redis ofrece una solución destinada a mejorar la velocidad y la eficiencia de dichas operaciones de procesamiento de datos. Mediante el uso de Redis, surge la posibilidad de almacenar datos que han sido procesados mediante una consulta de base de datos MySQL dentro de una instancia de caché de Redis dedicada. Este almacenamiento estratégico permite la recuperación directa de datos de la memoria del servidor, evitando así la necesidad de recorrer toda la ruta de regreso a la base de datos.
La mecánica operativa implica que el servidor web interactúe con Redis para determinar la disponibilidad de los datos deseados. En consecuencia, en los casos en que una solicitud posterior refleja una transacción de consulta anterior, el objeto Redis, que reside dentro de la caché de objetos, interviene para cumplir con la solicitud, eliminando así la necesidad de interactuar nuevamente con el servidor MySQL.
En casos caracterizados por la orquestación de una amplia gama de servidores web, que tipifican una flota a gran escala que abarca numerosas unidades, la integración de un caché de Redis singular puede agregar de manera competente solicitudes y respuestas que emanan de estos servidores web. Esta configuración prescinde efectivamente del requisito de que cada servidor web individual emprenda la trayectoria completa hasta la base de datos durante cada instancia de operación.
Por qué integrar Redis con WordPress
Habilitar Redis Cache dentro de su instalación de WordPress Core brinda la ventaja de acelerar la entrega de contenido a los clientes. Dado el uso extensivo de WordPress de búsquedas de consultas MySQL, la degradación del rendimiento se hace evidente durante instancias de alto tráfico.
En tales circunstancias, la caché de Redis asume un papel fundamental y aborda este escenario de manera competente. Al funcionar como una base de datos de pares clave-valor basada en memoria, Redis conserva todos los datos correspondientes dentro de la memoria, proporcionando así una solución rápida de almacenamiento en caché del lado del servidor adaptada a WordPress.
Estableceremos un caché de objetos de Redis, una medida ideada para refinar la utilización de la base de datos de WordPress. Este caché de objetos de Redis sirve como depósito de resultados almacenados en caché derivados de consultas específicas dirigidas al servidor MySQL. En consecuencia, cuando otros usuarios acceden a publicaciones o artículos idénticos, el caché de objetos satisface rápidamente sus solicitudes, obviando la necesidad de consultar el servidor MySQL.
Por lo tanto, la invocación recurrente de la base de datos MySQL de WordPress se mitiga mediante el almacenamiento en caché de consultas complejas, lo que facilita la entrega de resultados almacenados en caché para solicitudes similares posteriores. Esta estrategia evita un viaje de ida y vuelta adicional al servidor MySQL, lo que posteriormente aumenta los tiempos de respuesta del servidor y la velocidad general del sitio.
Requisitos previos para la tarea
Para continuar con las instrucciones descritas en esta guía, es imperativo poseer un sitio web de WordPress operativo alojado en un servidor remoto. La razón detrás de esta necesidad surge del hecho de que optimizar un sitio alojado localmente en su computadora personal es inviable, dada la naturaleza de renderizado del lado del servidor de WordPress. En consecuencia, surge la necesidad de alojar WordPress en un servidor remoto, un requisito previo para la configuración de un caché de Redis, así como para mejorar el tiempo de respuesta del servidor y la velocidad general del sitio. Es de suma importancia tener en cuenta que una comprensión fundamental del uso de WordPress es indispensable para abordar eficazmente el contenido de este tutorial.
Instalación de WordPress con el servidor AWS EC2
En esta guía instructiva, he establecido una instalación de WordPress utilizando la plataforma Amazon Web Services (AWS). A continuación se presentan instrucciones de procedimiento sucintas que delinean el proceso para su configuración. Inicialmente, es imperativo comprobar la posesión de una cuenta de AWS activa; Cabe señalar que una cuenta de nivel gratuito es suficiente a los efectos de este ejemplo.
Proceda a acceder a la consola de AWS y navegue hasta el servicio Amazon Elastic Compute Cloud (EC2), efectuando posteriormente el lanzamiento de una instancia virtual. A partir de entonces, dentro del recinto de AWS Marketplace, realice una búsqueda diligente de la aplicación WordPress. Es pertinente subrayar que la configuración actual sigue siendo elegible para la categoría de nivel gratuito. En consecuencia, opte por la iteración de WordPress empaquetada con Bitnami, que opera sobre la arquitectura del servidor HTTP Apache.
Seleccione un tipo de instancia de AWS apropiado. Para este escenario específico, opte por el tipo de microinstancia t2, que califica para la elegibilidad del nivel gratuito. Posteriormente, proceda al botón “Revisar Lanzamiento” y, una vez verificado, ejecute el lanzamiento de la instancia.
Genere un nuevo par de claves para establecer una conexión segura entre este servidor y una computadora local. Asegúrese de que el par de claves descargado que se origina en este proceso se conserve antes de iniciar las instancias.
Tenga paciencia mientras AWS inicializa y comienza el lanzamiento de la instancia. Para acceder a las instancias lanzadas, simplemente haga clic en el identificador de lanzamiento proporcionado como se indica a continuación.
Tras la confirmación del estado operativo de la instancia y la configuración exitosa de WordPress, la dirección IP asignada se vuelve evidente. Para acceder al blog de WordPress creado recientemente, simplemente ingrese la dirección IPv4 pública designada en un navegador web. Para entornos de producción, es suficiente el uso directo de su nombre de dominio.
Accediendo al servidor usando PuTTY
Comience adquiriendo la aplicación PuTTY, un cliente de código abierto que facilita las funcionalidades Secure Shell (SSH) y telnet en la plataforma Windows. Tras la adquisición, proceda a instalar PuTTY en su computadora.
Tras una instalación exitosa de PuTTY, ubique la utilidad PuTTYgen dentro del directorio de su computadora e inicie su ejecución. Esta fase requiere la conversión del par de claves generado previamente en un archivo de clave pública-privada. Dentro de la interfaz PuTTYgen, cargue la clave designada, inicie el proceso de generación de clave y posteriormente conserve la clave privada generada.
Después de estos procedimientos, inicie la aplicación PuTTY e ingrese el nombre de host o el nombre de dominio del servidor pertinente. Navegue a través de la interfaz hasta la sección 'Sesión' y proporcione la dirección IP asociada o el nombre de dominio, en caso de que esté configurado.
Se garantiza una configuración adicional dentro del menú 'Conexiones', específicamente en la subsección 'SSH' y, posteriormente, 'Auth'. Aquí se debe cargar la clave SSH recientemente guardada. Una vez configurada, la conexión se puede establecer seleccionando la opción 'Abrir'.
Tras una conexión exitosa, se presentará una interfaz de terminal. Ingrese 'bitnami' como credencial de inicio de sesión. Cabe destacar que 'bitnami' es el nombre de usuario predeterminado prescrito durante la instalación de WordPress. Si se han implementado modificaciones en el nombre de usuario, ingrese el nombre de usuario modificado en consecuencia. Esta interfaz de terminal proporciona una plataforma interactiva para introducir bibliotecas y extensiones adicionales para mejorar la funcionalidad del servidor de WordPress.
Agregar Redis al servidor raíz
Ahora que WordPress se ejecuta en el mismo servidor raíz, se debe agregar Redis. Ejecute el siguiente comando en la terminal PuTTY en la que acabamos de iniciar sesión para lograr esto.
sudo apt install redis
Como resultado, Redis se instalará en esta dirección IP. Puede reiniciarlo con sudo systemctl restart redis.service
para permitir que todo se configure. Ejecutemos para ver si el servidor Redis está activo y funcionando.
sudo systemctl status redis
Redis está configurado correctamente en nuestro servidor. Puede observar que todavía no tenemos ninguna clave de caché de Redis registrada ejecutando redis-cli
y el comando keys *
.
Ahora que todo está configurado, debemos ir a WordPress wp-admin
y agregar un complemento de Redis. Como resultado, sólo necesita ingresar su dirección IP o nombre de dominio y wp-admin
como se muestra a continuación.
your-ip-address/wp-admin
Vaya a su instancia en ejecución en AWS, haga clic con el botón derecho en "Supervisar y solucionar problemas" y luego ingrese la información de inicio de sesión de wp-admin. Registro del sistema, por favor. Para acceder a wp-admin, recibirá su información de inicio de sesión predeterminada de Bitnami WordPress. Y ha llegado al panel administrativo.
Agregar Redis a WordPress
Antes de configurar Redis, es necesario proceder con la instalación y activación del complemento Query Monitor .
El complemento Query Monitor facilita la depuración de varios aspectos, incluidas consultas de bases de datos, errores de PHP, enlaces y acciones, bloques dentro del editor de bloques, scripts y hojas de estilo en cola, llamadas API HTTP y más. Además, brinda la capacidad de mostrar un recuento completo de consultas de bases de datos organizadas por complementos individuales.
Para iniciar este proceso, navegue hasta la página de inicio de su sitio web y acceda al menú Query Monitor.
Al hacerlo, se iniciará el panel de Query Monitor.
Posteriormente, dirija su atención a las métricas obtenidas de esta página en particular. En particular, se trata de una página web relativamente sencilla, observable con un recuento acumulado de 23 consultas de bases de datos, ejecutadas en tan solo 0,0013 milisegundos.
Una vez completado este paso preliminar, proceda a introducir un nuevo complemento. Como ejemplo ilustrativo, busque "Redis" y opte por el complemento específico " Redis Object Cache ".
Luego de la selección, proceda a instalar y activar el complemento. Luego, vaya a la sección de configuración de Redis dentro del menú de su panel de control. En este punto, resulta imperativo habilitar la función de caché de objetos.
Siguiendo estas instrucciones, Redis se configurará usando la configuración predeterminada.
Verificación
En el contexto de la optimización de un sitio web, al acceder a un blog de su sitio web, como el blog predeterminado de WordPress "hola mundo", los resultados de esta solicitud se almacenan en el almacén de datos de Redis.
Posteriormente, navegue hasta la terminal e inicie la interfaz de línea de comandos (CLI) de Redis usando el comando " redis-cli
" junto con las claves especificadas (indicadas como *). En este punto, observará que Redis ha registrado debidamente las nuevas claves de WordPress (wp).
Esta configuración completa la configuración de Redis para fines de almacenamiento en caché dentro del entorno de WordPress.
Para presenciar los efectos, proceda a actualizar la página de inicio que cargó inicialmente y, al mismo tiempo, utilice Query Monitor.
La observación resultante revela un refinamiento notable: la página ahora se carga con sólo tres consultas a la base de datos, cada una completada en 0,0003 milisegundos extremadamente rápidos. Esta optimización ha aliviado sustancialmente la carga acumulada en el tiempo de procesamiento de consultas de nuestra base de datos. Las consultas antes mencionadas ahora se almacenan sistemáticamente en la memoria, lo que reduce la frecuencia de las llamadas directas a la base de datos MySQL. Esta orquestación contribuye colectivamente a mejorar la capacidad de respuesta del backend para cumplir con las solicitudes entrantes.
Terminando
Esto será crucial para hacer que su sitio web sea más rápido si administra un sitio web grande como woo-commerce. Además, al almacenar en caché los procesos que utilizan muchas bases de datos, el sitio web será más resistente.
Incluso cuando varias personas realizan pedidos, siguen utilizando el caché para recuperar los datos. Se utilizarán menos recursos y la experiencia de backend será más rápida.
Redis solo almacena en caché objetos y consultas de bases de datos. Esto significa que puede seguir usando otros complementos de caché para almacenar en caché sus páginas y acelerar su sitio web, como Cache Enabler y WP Cloudflare .