Configurar un cache de consultas MySQL en WordPress

Autor: | 2017-04-10T12:48:15+00:00 Fecha: 28/01/2016|Categorías: WordPress|Comentarios: 12 comentarios

Cuando hablamos de cache para WordPress, normalmente nos referimos al típico cache de página que implementan todas las webs WordPress para cargar rápido, es decir, el cache que permite implementar algún plugin como WP SuperCache, WP Rocket o WP Fastest Cache.

Pero esto es solo el principio, ya que existen otros elementos que participan en la carga de una web WordPress que podemos llegar cachear, quizás no con la intención de ganar velocidad de carga, sino para bajar el consumo de recursos o para librarnos de un cuello de botella.

En este artículo vamos a hablar del cache de consultas a la base de datos MySQL, un tipo de cache que nos permite reducir el número de consultas que se realizan a la base de datos MySQL del servidor, por lo que se reducirá de forma exponencial el consumo de recursos que se consumen al hacer las consultas e incluso si trabajamos con una buena infraestructura de almacenamiento podemos llegar a bajar unas décimas los tiempos de respuesta a la hora de recuperar datos desde la base de datos.

query cache

Un cache de consultas a la base de datos puede ser decisivo a la hora de hacer viable una web que no consigue mantenerse online por consumo de recursos, también puede ser decisivo a la hora de ahorrar consultas a un servidor MySQL externo o cuando trabajamos con un hosting compartido que siempre tiene algo de más latencia en la comunicación con el servidor MySQL porque es compartido con más clientes.

En este artículo vamos a hablar de tres plugins de cache de consultas para WordPress, aunque también es posible realizar cache mediante el propio servidor MySQL con el parámetro QUERY_CACHE.

A continuación, puedes ver una gráfica en la que puedes ver como bajo la actividad de consultas a MySQL tras la activación del plugin DB Cache Reloaded Fix:

cache consultas

Como puedes ver, la diferencia es bastante notable, pasamos de unas 200 consultas por segundo (web con unas 250.000 visitas diarias) a 5 o 10 consultas por segundo, el resto de peticiones se hacen directamente contra los archivos de cache guardados en disco por el plugin.

 

CACHE DE CONSULTAS MYSQL CON W3 TOTAL CACHE

En este blog ya hemos hablado bastante de W3 Total Cache, una suite de optimización para WordPress que nos permite implementar varios tipos de cache diferentes y que es ideal para cuando tenemos necesidades especiales a la hora de cachear una instalación de WordPress con mucho tráfico.

Una de las cosas que nos permite hacer W3 Total Cache es implementar un cache de consultas, pero es que, además, como puedes ver en la siguiente imagen, nos permite guardar el cache de consultas en soportes como Memcached, APC, Redis o en disco:

query cache wordpress

Personalmente creo que para sitios web con mucho tráfico y en casos en los que tenemos a nuestra disposición un servidor VPS o un servidor dedicado con mucha RAM, W3 Total Cache es el plugin de cache de bases de datos más recomendado, además también puedes usar al mismo tiempo el cache de página y el cache de objetos.

Si quieres configurar W3 Total Cache y su cache de consultas con WooCommerce, hace un tiempo publicamos un articulo sobre el tema, te ayudara a configurar las exclusiones para WooCommerce.

 

CACHE DE CONSULTAS CON DB CACHE RELOADED FIX

Aunque DB Cache Reloaded Fix es un plugin que lleva ya unos años sin actualizarse, es una excelente alternativa ya que por el momento no tiene ningún fallo de seguridad conocido.

No es un plugin con muchas opciones y solo permite guardar cache en disco, pero dispone de un sistema de exclusiones bastante bueno que nos ayudará a configurar el cache de consultas para funcionar con plugins como WooCommerce o bbPress.

query cache wordpress

DB Cache Reloaded Fix tiene un sistema de funcionamiento bastante simple, de ahí que apenas necesite actualizaciones, usa el API de WordPress para cachear las consultas y guarda estos datos en el disco duro.

DB Cache Reloaded Fix ha sido el sistema de cache de consultas con el que mejores resultados he conseguido a la hora de reducir el consumo de recursos de un WordPress sobre el servidor MySQL.

 

CACHE DE CONSULTAS CON NEXT LEVEL CACHE

Next Level Cache es un plugin de cache de consultas MySQL un poco más actualizado que DB Cache Reloaded Fix, pero también es mucho más difícil de instalar y de configurar que las otras alternativas de este artículo, debido a que principalmente, la configuración no es posible hacerla desde la propia interfaz de WordPress.

Como puedes ver en la siguiente imagen, la configuración se hace a través de archivos de configuración y declarando variables:

query cache wordpress

Next Level Cache es un plugin bastante complejo, de hecho, yo aún no he conseguido conocer y dominar completamente su funcionamiento, ya que tiene un funcionamiento muy automatizado, pero hay momentos en los que se vacía el cache y aún desconozco la razón o lo que lleva a pasar eso.

Next Level Cache permite guardar el cache en disco, esperemos que en futuras versiones se añadan nuevas funcionalidades, y esperemos que aparezcan nuevas versiones, ya que en el momento de escribir este artículo Next Level Cache se encuentra en la versión 0.0.9.

 

 

[Total: 8 Promedio: 3.8]
Mi nombre es Alvaro Fontela, soy consultor Wordpress y blogger activo desde hace años. Co-Fundador de Raiola Networks, escribiendo sobre Wordpress en este blog día tras día.

Utilizamos cookies propias y de terceros para obtener información estadística, mostrar publicidad personalizada a través del análisis de tu navegación, así como para interactuar en redes sociales. Si continúas navegando, consideramos que aceptas nuestra Política de cookies. ACEPTAR

Aviso de cookies