Cuando se trata de rendimiento web, WordPress cache es sólo una de esas cosas que cada dueño de sitio tiene que manejar en un momento u otro. Nos encanta WordPress, pero definitivamente no es la plataforma más rápida, especialmente si se compara con un sitio completamente estático. Una de las razones de esto es simplemente porque está construido en PHP que sólo puede ejecutar las cosas a una cierta velocidad. Vimos algunas mejoras masivas con PHP 8.1 y PHP 8.1, pero si su sitio no tiene una cache correctamente configurada, puede llegar a retrasarse un poco.

¿No sería agradable si no tuviera que preocuparse de averiguar qué cache plugin es el mejor? Bueno, aquí en Kinsta, nos encargamos de la en cache para usted, así que podrá centrase en el crecimiento de su negocio.

¿Qué Es WordPress Cache?

Caching es el proceso de almacenar sus recursos por una solicitud y reusar estos recursos por las solicitudes posteriores. Básicamente reduce la cantidad de trabajo requerida para generar una vista de página.

¿Por qué debe de usar cache? Es muy simple, caching hace que los sitios WordPress sean más rápidos reduciendo la carga en el servidor web. Por eso cada sitio debería esforzarse por usar lo máximo posible de caching. En adición en caso de CDN caching reduce el ancho de banda necesario de su WordPress host para generar una vista de página al almacenar recursos estáticos externos.

No Se Necesitan Plugins de WordPress Cache en Kinsta

¡Está bien! Si aloja su sitio de WordPress con Kinsta, no necesita preocuparse por jugar con complicados y confusos plugins de cache. Esto se debe a que se han implementado diferentes tipos de cache, tanto de cache de objetos como de cache de páginas, a nivel de servidor. Usted puede finalmente dejar de buscar en Google “los mejores plugins de cache de 2024» y centrarse en tareas más productivas.

En Kinsta utilizamos 4 formas distintas de cache automatizadas en el software a nivel del servidor.

Muchos de nuestros clientes reportan grandes reducciones en los tiempos de carga simplemente migrando a Kinsta. A continuación se muestra un ejemplo de un sitio que vio un aumento de 212,5% en el rendimiento. Y esto sin ningún plugin de caché instalado.

Tiempos de carga de WordPress en Kinsta
Tiempos de carga de WordPress en Kinsta

Hay otras variables involucradas en esas disminuciones de tiempos de carga también, pero la cache es una gran parte de ello. No estamos diciendo que todos los plugins de cache son malos, de hecho, muchas veces el usuario es el responsable por no configurar el plugin de cache correctamente, lo que a su vez ralentiza su sitio de WordPress. ¿Alguna vez ha intentado configurar W3 Total Cache? Puede ser bastante confuso muy rápidamente.

No Se Fíe Sólo en Nuestra Palabra

Y en cuanto a rendimiento, no es solo aceptar nuestra palabra, eche un vistazo en algunos de estos testimonios de las personas que han migrado a Kinsta. Todos ellos dejaron de utilizar plugins de cache.

Tipos de WordPress Cache

Ahora veamos cada tipo de WordPress cache que se encuentra regularmente en Kinsta. Comprender y conocer cada capa de caching le ayudará resolver los problemas relacionados con la cache y asegura que su sitio se ejecuta correctamente.

Bytecode Cache

Bytecode cache almacena código de PHP recopilado así la siguiente vez cuando se utiliza el paso de recopilación puede ser omitido. En Kinsta hemos habilitado OPcache en PHP 7.3 y 7.4 (y habilitaremos en nuevas versiones de PHP tan pronto como sean disponibles en nuestra plataforma).

Actualización: PHP 8.1 (versión oficial) ya está disponible para todos los clientes de Kinsta. PHP 7.4 ya no está soportado en Kinsta. Ten en cuenta que soportamos versiones de PHP 8.0, 8.1, 8.2 y 8.3.

Cuando un archivo o script es procesado primero tiene que ser recopilado en un opcódigo legible por máquinas. OPcache almacena el opcódigo convertido así PHP será capaz de omitir el paso de recopilación la próxima vez que ese archivo o script específico es requerido. El uso de OPcache significativamente mejora el rendimiento de PHP. Sin embargo eso significa que los cambios de los archivos PHP no son reflejados inmediatamente. Sin embargo, esto significa que los cambios en los archivos PHP no se reflejan inmediatamente. Por esta razón, OPcache está deshabilitado en los sitios staging de WordPress de Kinsta.

Lea más sobre  cómo OPcache acelera las aplicaciones de PHP.

Object Cache

Object cache almacena los resultados de las consultas de la base de datos así la próxima vez ese datos necesario puede ser entregado de la cache sin hacer consultas a la base de datos. Esto acelera el tiempo de ejecución de PHP y reduce la carga de la base de datos de WordPress.

WordPress tiene object cache integrada: WP_Object_Cache. Sin embargo la object cache solamente almacena objetos de una carga de página única. El objetivo de la cache es garantizar que no se hagan consultas a la base de datos varias veces durante una carga de página única. Sin embargo los objetos cacheados no son usados después de aquella carga única. Mientras esta es una característica útil en WordPress, object caching es más potente si los objetos de la cache pueden ser utilizados entre cargas de página múltiples.

Esta conducta puede ser cambiada y reutilizar los objetos cacheados en cargas de página múltiples cambiando la object cache integrada de WordPress a una solución externa. Esto se hace arrastrando el caching script en el directorio /wp-content/. Hay opciones basadas en object cache como W3 Total cache.

Nuestros clientes Enterprise pueden adquirir nuestro Reddis add-on y tenerlo instalado junto con PHP 8.0 y 8.1. Redis es un almacén de datos estructurados en memoria interna de código abierto utilizado como base de datos, cache y broker de mensajería. WP Tavern tiene un artículo genial sobre object caching persistente si desea aprender más.

Page Cache

Page Cache almacena el HTML entero de una página así vistas de página posteriores pueden ser generados sin la necesidad de que WordPress genere la página.

Cuando se carga un sitio WordPress, WordPress debe procesar un número grande de archivos PHP y hacer consultas a la base de datos varias veces. Páginas que no son actualizadas constantemente es un esfuerzo perdido. Es más efectivo generar una página una sola vez, almacenar la página y entregarla a los visitantes posteriores. Esto es lo que page caching hace.

Los beneficios de page caching incluyen:

  • Cargas de página más rápidas
  • Carga del servidor reducida y la capacidad de recibir dramáticamente más tráfico como resultado.

Nuestros servidores utilizan el nginx fastcgi cache module para el cacheo de páginas, y está configurado para expirar cada una hora por defecto. Sin embargo, los clientes pueden cambiar la expiración del caché de la página en cualquier momento en el panel de control MyKinsta. Para cambiar el tiempo de expiración del caché de páginas, dirígete a la página de «Herramientas» de tu sitio, haz clic en el menú desplegable «Modificar» en «Caché del sitio» y haz clic en Cambiar la expiración del caché.

Opciones de expiración de la memoria caché en MyKinsta.
Opciones de expiración de la memoria caché en MyKinsta.

En el modo «Cambiar la expiración de la caché», selecciona el tiempo de expiración que deseas y haz clic en Cambiar la expiración. Ofrecemos opciones desde 1 hora hasta 7 días. Para los sitios que no cambian a menudo, puede ser beneficioso en términos de rendimiento tener una mayor caducidad de la memoria caché.

Página de opciones de expiración de la memoria caché en MyKinsta.
Página de opciones de expiración de la memoria caché en MyKinsta.

Page cache está configurado para trabajar bien de inmediato con WordPress estándar, BuddyPress, WooCommerce y sitios de Easy Digital Downloads. Esto significa que las páginas como el panel de control de WordPress, los carritos de compra de WooCommerce, los foros de BuddyPress para los usuarios registrados, y más, se omiten automáticamente de la caché de la página. Si utilizas una configuración de WordPress muy personalizada, es posible que sea necesario realizar más personalizaciones en la configuración de la caché de la página, y nuestro equipo de soporte puede ayudarte con ello.

Por defecto, el almacenamiento en caché de páginas está desactivado en los sitios staging de Kinsta. En algunos casos, la habilitación del almacenamiento en caché de páginas en los sitios de staging son útiles para fines de prueba. El almacenamiento en caché de páginas para los sitios staging se puede habilitar en el panel de control MyKinsta.

CDN Cache

CDN caching almacena archivos (tal como JS, CSS y archivos de medios) en una CDN por entrega más rápida a los usuarios distantes geográficamente de la ubicación del servidor del host. Cuando alguien intenta acceder a un sitio web esos archivos son entregados de una CDN en lugar de tener que entregarlos del servidor que de hecho aloja el sitio web. Lea más acerca del uso de WordPress CDN.

CDN ofrece dos beneficios primordiales:

  • Reduce la cantidad de recursos necesarios para cargar un sitio web ya que la CDN hace el trabajo el servidor no.
  • Permite que los recursos sean entregados de ubicaciones por todo el mundo acelerando el desempeño del sitio para usuarios distantes geográficamente del servidor alojando dicho sitio web.

Existen dos tipos básicos de CDN: aquellas que son CDNs simplemente y las que ofrecen CDN junto con características de seguridad. Ejemplos:

  • CDN estándar: Stackpath, Cloudfront.
  • CDN más seguridad: Kinsta CDN (Cloudflare), Sucuri, Akamai (opcionalmente).

El primer tipo de CDN se configura creando URLs de CDN que se utilizan para acceder a los recursos del sitio web. La forma exacta en que se habilita esto varía de una CDN a otra. La idea básica es que las URL de los recursos estáticos se cambiarán por la URL de la CDN para que los recursos se extraigan de la CDN. Una CDN estándar normalmente solo almacena en caché archivos estáticos como JS, CSS y archivos multimedia.

El segundo tipo de CDN sirve como servidor proxy completo. Esto significa que cada solicitud tiene que pasar por los servidores del proveedor antes de llegar a los servidores de Kinsta. Esto se consigue utilizando los servidores de nombres del proveedor de la CDN, de modo que el proveedor de la CDN tiene el control total de los DNS del sitio web. Esto permite al proveedor hacer muchas cosas que una simple CDN no puede hacer, como filtrar el tráfico de IPs malas, ofrecer protección DoS/DDoS, o incluso almacenar un caché de páginas completo en la CDN. Nuestra CDN Kinsta está impulsada por Cloudflare, un servicio de rendimiento/seguridad de proxy.

CDN Caching Avanzada

Si utiliza un proxy server como Cloudflare o Sucuri, usted tiene la habilidad para crear page cache de HTML completa en la CDN. El uso de la mismo completamente descarga el trabajo de nuestros servidores y es una solución excelente para los sitios anticipando un aumento masivo de tráfico.

Cabecera de Respuesta de Kinsta Cache

Puede probar si su página está sirviéndose desde la Kinsta Cache mirando sus Cabeceras de respuesta HTTP. Kinsta añade una cabecera de X-Kinsta-Cache. En la primera solicitud a una página no almacenada en cache, mostrará MISS, como se ve a continuación.

miss http cabecera de respuesta cache
Cabecera de cache – Miss

En la segunda solicitud a la misma página, el valor del encabezado de X-Kinsta-Cache mostrará «HIT», lo que significa que está sirviéndose desde la cache.

HIT http cabecera de respuesta cache
Cabecera de cache – Hit

Y si lee nuestro artículo sobre cómo sacar 100/100 en Google PageSpeed Insights, sabrá que Kinsta también tiene optimizaciones a nivel de servidor adicionales para arreglar automáticamente las siguientes advertencias con las que podría estar familiarizado:

  • Habilitar Compresión (Kinsta ya tiene Gzip habilitado en todos los servidores, no es necesario habilitarlo)
  • Reducir el tiempo de respuesta del servidor (Kinsta ya es superrápido, ya está dentro de los parámetros aceptables de Google sin ninguna optimización)
  • Expiración de Cabeceras (no es necesario habilitarlo porque Kinsta tiene cabeceras de cache habilitadas en el nivel del servidor)

Por ejemplo, nuestro sitio de prueba registra 100/100 en PageSpeed Insights sin que se haya habilitado ningún plugin de cache. La cache de WordPress es manejada por Kinsta al nivel de servidor.

pagespeed insights caching
PageSpeed Insights

Configuración de Kinsta Cache

Puede estar preguntándose ahora, cómo controlar la cache en Kinsta. Habrá por supuesto, ocasiones cuando necesite borrarla, especialmente cuando esté solucionando problemas. Tiene un par de opciones fáciles. Puede borrar la cache del panel de control MyKinsta o utilizar el Kinsta MU Plugin.

Borrando la WordPress Cache

Para borrar manualmente la cache de páginas completa, puede hacerlo desde el panel de MyKinsta. Simplemente haga clic en su sitio, haga clic en herramientas y en el botón «Borrar Cache».

Borrar el caché de WordPress en MyKinsta.
Borrar el caché de WordPress en MyKinsta.

Por defecto, la caché está deshabilitada en los entornos staging de WordPress de Kinsta. Si deseas probar la funcionalidad de almacenamiento en caché de páginas en un sitio de staging, puedes habilitar el almacenamiento en caché utilizando la herramienta «Site Cache» en el panel de control de MyKinsta. Después de habilitar el cacheo para un entorno de staging, puedes usar el botón «Borrar Cache» para borrar la cache al igual que el entorno en vivo.

Kinsta MU Plugin

La segunda opción que tiene es la de usar el Kinsta Cache Plugin. ¿Qué? Sí, técnicamente es un plugin de cache, pero no es un plugin de cache típica, ya que funciona a nivel del servidor.

El Kinsta MU Plugin es instalado de forma predeterminada en todos los sitios alojados en Kinsta. Le permite borrar la cache de objetos, la cache de páginas y automatizar el borrar dependiendo de ciertas actividades, por ejemplo cuando publica una nueva entrada. El plugin es necesario para garantizar la ejecución correcta de su sitio. Además, recuerda que la cache de páginas expira cada 1 hora de forma predeterminada.

Kinsta MU plugin.
Kinsta MU plugin.

El plugin también le permite purgar la cache directamente desde la barra de administración de WordPress. Esto probablemente sea una de las mayores razones para usarla, ya que no deberá ir al panel de control MyKinsta. Puede hacerlo desde su sitio.

eliminar wordpress cache de la barra de admin
Eliminar cache de la barra de herramientas de WordPress

Le permite configurar reglas de caching personalizadas. Dependiendo de la configuración de su sitio, reglas de caching adicionales pueden ser necesarias. Puede agregar rutas personalizadas cuando se actualiza el sitio.

También puede ponerse en contacto con nuestro equipo de soporte si necesita una determinada página o URL excluida de la caché.

El entorno de la puesta en escena de Kinsta

Por defecto, los entornos staging en Kinsta tienen el caché de páginas desactivado. Esto facilita el desarrollo y la depuración de tu sitio de WordPress sin tener que limpiar manualmente la caché después de cada edición. En algunos casos, puede que quieras habilitar el almacenamiento en caché de páginas en un entorno staging para ejecutar una prueba de velocidad precisa para una página almacenada en caché sin tener que activar tu sitio en vivo.
Para habilitar el almacenamiento en caché de páginas en un entorno staging, navega a Sitios > Herramientas en MyKinsta y haz clic en el botón «Habilitar caché». Cuando habilitas el almacenamiento en caché en un entorno staging, puedes utilizar el botón «Borrar caché» para purgar la caché.

Habilita el almacenamiento en caché de las páginas de tu sitio web de staging.
Habilita el almacenamiento en caché de las páginas de tu sitio web de staging.

Kinsta Cache Analítica

Puede conocer todos los detalles del rendimiento de su sitio mediante MyKinsta Analytics. El gráfico le permite ver el estado de cada solicitud: HIT, BYPASS, MISS, o EXPIRED. Puede filtrar los datos por las últimas 24 horas, 7 o 30 días.

Gráfico de componentes de Kinsta cache
Gráfico de componentes de Kinsta cache

El gráfico le muestra su relación de caching. Cuanto más solicitudes sirve de la cache es mejor.

Gráfico de relación de cache
Gráfico de relación de cache

La sección de «Bypass» le muestra qué solicitudes no son servidas de la cache. Típicamente esto incluye CRON jobs, solicitudes admin-ajax, páginas de pago de ecommerce, cadenas de consulta y parámetros UTM, etc.

Bypass principales
Bypass principales

Cacheando Páginas 404

404 páginas pueden ser muy intensivas en recursos. Una gran cantidad de sitios de WordPress, especialmente los sitios de membresía grandes, generan más errores 404 de lo que uno podría pensar. Quizás haya cambiado la ubicación de una página y se haya olvidado de agregar una redirección, o tenga un enlace incorrecto en algo que compartió en las redes sociales. En otras palabras, hay muchas cosas que hacen que un visitante termine en su página 404. Estas páginas también tienden a tener consultas para obtener resultados de búsqueda alternativos que luego llegan a la base de datos.

Para garantizar un mejor rendimiento en su sitio de WordPress, Kinsta almacena en caché páginas 404 durante 15 minutos. El valor del encabezado X-Kinsta-Cache mostrará un HIT, lo que significa que se está sirviendo desde el caché. Si crea una página que anteriormente era una de 404, el caché se purga inmediatamente.

Nuestra herramienta de análisis de MyKinsta puede ayudarle a determinar la cantidad exacta de errores 404 que ocurren en su sitio.

Desglose de errores 404
Desglose de errores 404

Sin embargo, es importante aclarar que no almacenamos en caché las solicitudes 404. Hay dos tipos diferentes: las de las páginas PHP que llegan a su página 404 y las de archivos o imágenes faltantes que ya no existen o se han movido. Guardamos en caché páginas 404, solicitudes a archivos perdidos e imágenes se manejan de manera diferente.

Por lo tanto, puede usar los «errores 404 principales» para determinar mejor dónde y qué los está causando.

Solicitud de página 404 cacheada
Solicitud de página 404 cacheada

También puede verificar los errores 404 en la Google Search Console o instalar un plugin de terceros, como la Redirection, que registra los errores 404. Sin embargo, recuerde que los plugins como estos también tienen un impacto en el rendimiento. Es mucho mejor confiar en una herramienta a nivel del servidor.

Cree una plantilla 404 simple que evite consultar más la base de datos si es posible.

Solicitudes POST Omiten el Caché

Queremos que nuestras estadísticas de análisis y almacenamiento en caché sean lo más precisas posible. Es importante porque cuando resuelve problemas de rendimiento, generalmente verá su relación HIT de caché total, que uno desea que sea lo más alta posible. Por lo tanto, las solicitudes POST se incluyen en nuestros informes.

Las solicitudes POST no se pueden almacenar en caché, aparte de algunas configuraciones altamente especializadas. El valor del encabezado X-Kinsta-Cache mostrará un BYPASS para estas solicitudes. Estos no deben confundirse con las entradas de blog o cualquier tipo de publicación de WordPress (que se pueden almacenar en caché). Una solicitud POST se utiliza para enviar datos al servidor. Así, por ejemplo, los datos enviados al enviar un formulario web se almacenan en el cuerpo de la solicitud HTTP.

Resumen

Esperamos que ahora comprenda un poco más sobre la WordPress cache y las cuatro formas distintas que puede encontrar en Kinsta: bytecode caching, object caching, page caching y CDN caching.

¡Si está cansado de perder tiempo con plugins de caching de WordPress típicos y simplemente quiere un sitio rápido ya listo, le recomendamos que pruebe Kinsta! Hay una razón por la que hemos sido galardonados con el estatus de “Nivel superior” en rendimiento de WordPress 4 años seguidos por ReviewSignal. Y eso es porque nuestros servidores están bien configurados en Google Cloud Platform para garantizar tiempos de carga rápidos. No quedará decepcionado por nuestro rendimiento.

Brian Jackson

Brian tiene una gran pasión por WordPress, lo ha estado utilizando durante más de 10 años e incluso ha desarrollado un par de plugins premium. Brian disfruta de los blogs, las películas y el senderismo. Conéctese con Brian en Twitter.