Heartbeat-API

[aioseo_eeat_author_tooltip]
[aioseo_eeat_reviewer_tooltip]
Was ist die Heartbeat-API?

Die Heartbeat-API in WordPress fungiert wie der Puls Ihrer Website: Sie sendet alle paar Sekunden ein kurzes Signal („Ich bin da!“) von Ihrem Browser an Ihren Server. Dieser automatische Anfrage-Antwort-Zyklus synchronisiert die Daten, Beiträge und das Dashboard Ihrer Website und stellt so Echtzeit-Updates und wichtige Funktionen für Redakteure, Plugins und Administratoren bereit.

In diesem Glossarartikel erfahren Sie genau, wie die WordPress Heartbeat API funktioniert, warum sie wichtig ist und wie Sie sie überwachen, steuern oder deaktivieren können, falls sie eine hohe CPU-Auslastung auf Ihrem Hosting verursacht.

Warum die WordPress Heartbeat API wichtig ist?

Die Heartbeat-API bildet die Grundlage vieler benutzerfreundlicher WordPress-Funktionen, indem sie die ständige Kommunikation zwischen Browser und Server gewährleistet. Ohne sie würden Ihnen praktische Funktionen wie automatisches Speichern, das Sperren gemeinsamer Beiträge und Live-Aktualisierungen im Dashboard fehlen.

  • Schützt Ihren Beitragseditor: Beim Verfassen oder Bearbeiten eines Beitrags im WordPress-Editor speichert Heartbeat Ihre Änderungen automatisch alle 15–60 Sekunden, sodass Sie Ihre Arbeit niemals verlieren, falls Ihr Browser oder Ihre Verbindung abbricht.
  • Benutzersperre & Benachrichtigungen: Wenn zwei Autoren gleichzeitig versuchen, denselben Beitrag zu bearbeiten, sendet Heartbeat Benachrichtigungen („Ihr Teammitglied bearbeitet diesen Beitrag“) und wendet einen Sperrmechanismus an, um Inhaltskonflikte zu verhindern.
  • Echtzeit-Dashboard-Widgets: E-Commerce-Plugins wie WooCommerce nutzen die API, um Verkaufsdaten in Ihrem Dashboard zu aktualisieren, ohne dass die Seite komplett neu geladen werden muss.
  • Sitzungs-Timeout-Warnungen: Heartbeat kann Sie warnen, wenn Ihre Anmeldesitzung abgelaufen ist, und Sie auffordern, sich erneut anzumelden, bevor nicht gespeicherte Änderungen verloren gehen.

So funktioniert die Heartbeat-API: Die Grundlagen

Heartbeat arbeitet mit kleinen AJAX-Anfragen an Ihren Server und ermöglicht WordPress so die Datenkoordination ohne vollständige Seitenaktualisierung. Diese häufigen Anfragen optimieren Funktionalität und Sicherheit , indem sie sicherstellen, dass Redakteure aktuelle Informationen sehen und Sitzungen gültig bleiben.

  • Browser sendet admin-ajax.php Anfrage: Bei jedem Heartbeat-Tick sendet Ihr Browser einen kleinen AJAX-Aufruf an /wp-admin/admin-ajax.php.
  • Server verarbeitet Anfrage: WordPress führt alle eingebundenen Funktionen aus, ruft neue Daten ab und sendet diese dann als JSON-Antwort zurück.
  • Browser empfängt und reagiert: Die JavaScript-Ereignisse Ihres Browsers fangen die Antwort ab, aktualisieren die Benutzeroberfläche (z. B. automatisches Speichern, Widget-Aktualisierung) und bereiten sich auf das nächste Intervall vor.

js

// Beispiel: Auf den nächsten Heartbeat-Tick im Frontend warten
jQuery(document).on('heartbeat-tick', function(event, data) {
console.log('Heartbeat-Antwort empfangen:', data);
});

  • Standardintervall : Editor-Bildschirm (15 Sekunden) und Dashboard & andere Admin-Seiten (60 Sekunden).

Kern-Hooks und Codebeispiele

Entwickler nutzen die integrierten Hooks von Heartbeat, um benutzerdefinierte Funktionen hinzuzufügen oder das Verhalten anzupassen. Sie können die API so konfigurieren, dass die benötigten Daten ausgetauscht werden, indem Sie diese JavaScript- und PHP-Ereignisse nutzen.

JavaScript-Hooks

Nachfolgend sind zwei primäre JS-Hooks aufgeführt, die Sie für die Frontend-Steuerung nutzen können:

  • Herzschlag-Senden: Fügen Sie vor jeder Anfrage benutzerdefinierte Daten hinzu.
  • Herzschlag-Tick: Nach Abschluss der Anfrage auf die erhaltenen Daten reagieren.

js

// Füge bei jedem Heartbeat-Send-Ereignis zusätzliche Informationen hinzu
jQuery(document).on('heartbeat-send', function(e, data) {
data.customValue = jQuery('#my-field').val();
});

PHP-Hooks

Serverseitig ermöglichen diese Hooks das Modifizieren oder Reagieren auf Heartbeat-Aufrufe:

  • Herzschlag_senden: Die vom Server zurückgegebenen Daten verändern.
  • Herzschlag empfangen: Reagiere, sobald der Server ein Signal empfängt.

php

add_filter('heartbeat_send', 'my_heartbeat_send', 10, 2);
function my_heartbeat_send($response, $screen_id) {
if ($screen_id === 'post') {
$response['server_time'] = time();
}
return $response;
}

Häufige Anwendungsfälle der WordPress Heartbeat API

Die Echtzeitfunktionen von Heartbeat bilden die Grundlage für viele alltägliche WordPress-Funktionen. Die Synchronisierung von Server und Browser sorgt dafür, dass Dashboards und Editoren stets aktuell sind – ganz ohne manuelle Klicks oder vollständiges Neuladen.

  • Automatisches Speichern & Revisionen: Heartbeat läuft nahtlos im Beitragseditor und erstellt alle 15 Sekunden Backups, damit Sie verlorene Inhalte wiederherstellen können.
  • Verkaufsdaten in Echtzeit: Entwickler von E-Commerce-Plugins nutzen Heartbeat, um aktuelle Verkaufsstatistiken abzurufen und diese sofort anzuzeigen.
  • Hinweise zum Sitzungsablauf: Wenn Ihre Anmeldesitzung abläuft, zeigt Heartbeat eine Benachrichtigung an: „Klicken Sie hier, um angemeldet zu bleiben.“
  • Benachrichtigungen zur Zusammenarbeit: Auf Websites mit mehreren Autoren sehen Sie, wer welchen Beitrag bearbeitet, wodurch Überschreibungskonflikte vermieden werden.

Leistungsaspekte und hohe CPU-Auslastung

Heartbeat ist zwar für Echtzeitaktualisierungen unerlässlich, kann aber auf stark frequentierten Websites die CPU stark belasten. Jede häufige AJAX-Anfrage an admin-ajax.php beansprucht Rechenzeit und Arbeitsspeicher, was bei Shared-Hosting-Konten zu einer Überlastung der Ressourcen führen kann.

  • Erhöhte CPU-Auslastung: Häufige Heartbeat-API-Aufrufe können die CPU-Auslastung Ihres Servers erheblich erhöhen, insbesondere bei Shared-Hosting-Paketen, da jeder Tick von PHP die Verarbeitung einer AJAX- Anfrage erfordert.
  • Langsamere Seitenreaktion: Da der Server diese Anfragen vermehrt bearbeiten muss, können sich das Laden von Frontend-Seiten und die Interaktion mit dem Admin-Dashboard spürbar verlangsamen.
  • Suspendierungsrisiko: Wenn das Volumen von admin-ajax.php Wenn die Anfragen Ihre Website über die CPU-Grenzen Ihres Hostinganbieters hinaus belasten, kann Ihr Konto gedrosselt oder gesperrt werden, bis die Nutzung wieder ein akzeptables Niveau erreicht.

Wie kann man den Herzschlagverkehr überwachen?

Die Beobachtung der Heartbeat-Aktivität kann Ihnen helfen, Leistungsengpässe frühzeitig zu erkennen. Nutzen Sie Serverprotokolle und clientseitige Tools, um die Häufigkeit von Anfragen und die Antwortzeiten zu verfolgen.

  • Serverprotokolle & Statistiken: Prüfen Sie CPU-Auslastungsspitzen in cPanel oder Ihrem Hosting-Dashboard und konzentrieren Sie sich dabei auf Folgendes: Einträge in /wp-admin/admin-ajax.php.
  • Browser-Entwicklertools: In Chrome oder Firefox Entwicklertools → Registerkarte Netzwerk → Filter „admin-ajax.php“ → Taktfrequenz und Antwortzeit beobachten.
  • Plugin-Lösungen: Installieren Sie Performance-Plugins (z. B. Query Monitor), um Heartbeat-Aufrufe, Speichernutzung und Ausführungszeit direkt im Admin-Dashboard anzuzeigen.

Steuerung und Begrenzung der Heartbeat-API

Falls der Standardrhythmus von Heartbeat Ihren Server überlastet, können Sie ihn selektiv verlangsamen oder deaktivieren. So können Sie Echtzeitfunktionen mit optimaler Leistung und Ressourcenkontrolle in Einklang bringen.

  • Per Plugin: Installieren Sie Heartbeat Control oder nutzen Sie die integrierten Einstellungen von WP Rocket
  • Über Code

php

// Reduziert die Heartbeat-Frequenz auf einmal alle 60 Sekunden
add_filter('heartbeat_settings', function($settings) {
$settings['interval'] = 60;
return $settings;
});
// Deaktiviert die Funktion im Frontend vollständig
add_action('init', function() {
if (!is_admin()) wp_deregister_script('heartbeat');
}, 1);

Risiken der Deaktivierung der Heartbeat-API

Das Deaktivieren von Heartbeat kann die CPU-Last verringern, geht aber mit dem Verlust einiger wichtiger Funktionen einher. Bevor Sie Heartbeat für die gesamte Website deaktivieren, sollten Sie sich über die Auswirkungen auf Benutzerfreundlichkeit und Sicherheit im Klaren sein.

  • Keine automatischen Speicherfunktionen im klassischen Editor → manueller Klick auf „Entwurf speichern“ für jede Änderung erforderlich.
  • Möglicher Datenverlust bei Unterbrechung der Internetverbindung während des Veröffentlichungs-/Aktualisierungsvorgangs.
  • Dashboard-Widgets und -Plugins, die auf Heartbeat basieren, werden nicht mehr funktionieren, was zu Einschränkungen bei Echtzeitberichten und -funktionen führt.

Bewährte Verfahren und Fehlerbehebung

Anstatt den Heartbeat komplett zu deaktivieren, ist es sinnvoller, sein Verhalten feinabzustimmen. Durch selektives Drosseln oder Protokollieren des Heartbeats bleiben seine Vorteile erhalten, während die Serverstabilität gewährleistet wird.

  • Drosseln, nicht abschalten : Anstatt die Funktion komplett zu deaktivieren, sollte das Intervall von 15 auf 30 oder 60 Sekunden erhöht werden.
  • Testen in der Testumgebung : Wenden Sie zunächst Intervalländerungen oder Deregistrierungen in einer Testumgebung an, um Probleme aufzudecken.
  • Kombinieren Sie dies mit Caching : Nutzen Sie Objekt- oder Seiten-Caching, um die zusätzliche Serverlast durch Heartbeat auszugleichen.
  • Protokollierung aktivieren: Hook into Herzschlag empfangen um Taktzyklen aufzuzeichnen und unerwartetes Verhalten zu debuggen.

Abschließender Gedanke

Die WordPress Heartbeat API hält Ihre Website aktiv und synchronisiert. Sie speichert Entwürfe automatisch, zeigt Echtzeitdaten an und verhindert Bearbeitungskonflikte. Zu viele Anfragen können die CPU-Auslastung erhöhen. Sie können die API bei Bedarf drosseln oder deaktivieren. Testen Sie Änderungen zunächst auf einer Testumgebung. Mit der richtigen Einstellung verbessert Heartbeat die Funktionalität, ohne die Leistung zu beeinträchtigen.

Weitere WordPress-Begriffe und ausführliche Erklärungen finden Sie im Seahawk Media Glossary .

Ähnliche Beiträge

Was ist Farbtönung?

Was ist Farbtönung?

Farbe spielt eine wesentliche Rolle in Kunst, Design und Alltag. Sie geht über Rot hinaus

Was ist der WordPress-Editor?

Was ist der WordPress-Editor?

Der WordPress-Editor ist die zentrale Drehscheibe für die Erstellung von Inhalten und das Design innerhalb von WordPress

Was ist das Hauptmenü in WordPress?

Was ist das Hauptmenü in WordPress?

Wenn Sie gerade erst mit dem Erstellen einer WordPress-Website begonnen haben, sind Sie wahrscheinlich schon auf den Begriff „Hauptmenü“ gestoßen

Legen Sie los mit Seahawk

Melde dich in unserer App an, um unsere Preise einzusehen und Rabatte zu erhalten.