En este post vamos a hablar sobre la Heartbeat API, para que sirve y cómo desactivarla o limitarla con el plugin Heartbeat Control para ahorrar recursos del servidor e incluso mejorar aspectos de la velocidad web como el error del archivo admin-ajax.php.

¿Qué es la Heartbeat API?

Heartbeat API es una funcionalidad de WordPress que permite recopilar información sobre la administración de WordPress y enviarla desde el navegador en «tiempo real» al servidor.

Permite utilizar ciertas funcionalidades que mejoran el uso de la administración de WordPress.

Por ejemplo, permite el autoguardado de un post en el navegador, una funcionalidad muy útil para los escritores.

También permite mostrar avisos a los autores si un post está siendo editada en ese instante por otro autor.

Los plugins también pueden utilizar esta API para lanzar y recibir datos o avisos de una herramienta externa dentro del panel de WordPress.

Lo que significa que esta API es realmente útil si tenemos múltiples usuarios, editores y administradores del sistema.

¿Qué hace la Heartbeat API?

La Heartbeat API lanza información en cortos periodos de tiempo, como si se tratara de un latido del corazón que envía la sangre (información) por el sistema.

El periodo de tiempo de latido de información es un poco diferente dependiendo de qué zona esté activa.

Suele ser de 15 segundos en la edición de texto cuando trabajamos en una página o entrada y de 1 minuto en la zona de administración.

Cuando se ejecuta el latido, se recopila información haciendo una llamada a la Heartbeat API que genera muchas peticiones de información y que son administradas por el archivo admin-ajax.php

En definitiva, la Heartbeat API realiza un sondeo de información de WordPress, en cortos periodos de tiempo, mediante el archivo admin-ajax.php

Problemas de la Heartbeat API

La Heartbeat API es una funcionalidad fundamental, sobre todo para la administración y gestión de los editores.

Pero debido a la cantidad de peticiones de información que realiza puede generar problemas de velocidad de carga de nuestra web debido a un consumo excesivo de recursos del servidor.

También, se puede detectar una ralentización de la zona de administración, que te puedo prometer que es muy frustrante trabajar si se produce este problema.

En concreto es muy común encontrar el Error del archivo admin-ajax.php que podemos ver en Gtmetrix.

error admin ajax php

Para mejorar la optimización y la carga del archivo admin-ajax.php primero hay que tener en cuenta:

  • Que los usuarios consumen recursos del sistema simplemente con estar logueados en la zona de administración
  • Es recomendable cerrar la sesión de WordPress y no irse a casa dejando la sesión abierta.
  • Los plugin pueden recargar con más peticiones el uso de la Heartbeat API si envían o reciben información dentro de la administración de WordPress.
  • Es recomendable reducir el uso de plugins que muestran información externa como estadísticas de Google Analytics dentro de WordPress.

Si después de tomar medidas respecto de lo que acabamos de ver, seguimos teniendo problemas con el archivo admin-ajax.php o detectamos una ralentización de la zona de administración, podemos limitar el tiempo del latido o desactivarla API.

¿Desactivar o limitar Heartbeat API?

Puedes desactivar Heartbeat API de WordPress si eres un el único autor de tu página web, si no necesitas el autoguardado, ni el control de revisiones del navegador y ningún plugin o desarrollo utiliza esta funcionalidad.

Muchas veces no sabemos si estamos utilizando esta API con alguna herramienta o simplemente no queremos perder las funcionalidades, en esta situación la mejor opción y lo más recomendable es limitar el latido de Heartbeat API.

Heartbeat Control WordPress

Podemos limitar o desactivar la Heartbeat API con el plugin Heartbeat control

plugin heartbeat control

La configuración del plugin heartbeat control es muy sencilla pero tendrás que hacer pruebas ya que para cada instalación es diferente dependiendo de los recursos que utilice.

Desde Ajustes > Heartbeat Control podemos crear reglas para activar o desactivar esta función y también podemos ajustar la frecuencia del latido con la opción Modify Heartbeat.

También hay que configurar en qué zona se aplica la regla, si en la zona de administración, en la edición de los post o en el frontend.

cómo configurar heartbeat control plugin

Se pueden crear varias reglas para personalizar cada zona, pero si creas varias reglas de la misma zona tendrá la regla que esté por encima en el panel.

Como ya he dicho antes tendrás que hacer pruebas para averiguar qué configuración es la adecuada para ti.

Dependiendo de si tu zona de administración se ha vuelto lenta o si de tienes problemas con la carga del archivo admin-ajax.php etc…

Comienza por aumentar la frecuencia del latido en 30 segundos y sigue aumentándola y haciendo varias mediciones hasta dar con la configuración que te sirva.

Conclusión

La desactivación o limitación de la API es una medida de optimización, y mejora un poco la velocidad de carga de la web.

Pero al menos que no tengamos un problema grave en la carga del archivo admin-ajax.php o una zona de administración lenta no recomiendo implementar esta medida a lo loco.

Personalmente suelo preferir tener esta API activada, y no romper sus funcionalidades que son útiles para el escritor, solo por ganar centésimas de segundo en la carga de una web.

Para mejorar la velocidad de la web puede ver el tutorial Cómo mejorar la velocidad de WordPress

Utilizando constructores visuales de forma muy exagerada la zona de administración también se ralentiza, pero no he tenido la oportunidad de ver si mejora considerablemente limitando o desactivando la API Heartbeat, si tienes la oportunidad de hacer pruebas cuéntanos tus sensaciones en los comentarios.

Pin It on Pinterest

Shares
Esta web utiliza cookies propias para su correcto funcionamiento y cookies de terceros (Incluido Google y otros terceros) para mostrar y medir anuncios personalizados y contenidos personalizados. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Puedes Personalizar Cookies para configurar tus preferencias de cookies y tratamiento de datos.    Más información
Privacidad