Hartslag-API

[aioseo_eeat_author_tooltip]
[aioseo_eeat_reviewer_tooltip]
Wat is de Heartbeat API?

De Heartbeat API in WordPress werkt als de hartslagmeter van je website: elke paar seconden stuurt het een klein signaal van je browser naar de server om aan te geven dat de site nog actief is. Deze automatische cyclus van verzoek en antwoord synchroniseert de gegevens, berichten en het dashboard van je website, waardoor redacteuren, plugins en beheerders realtime updates en essentiële functionaliteit krijgen.

In dit verklarende artikel leer je precies hoe de WordPress Heartbeat API werkt, waarom deze belangrijk is en hoe je deze kunt monitoren, beheren of uitschakelen als deze een hoge CPU-belasting op je hosting veroorzaakt.

Waarom is de WordPress Heartbeat API belangrijk?

De Heartbeat API vormt de basis van veel van de meest gebruiksvriendelijke functies van WordPress door uw browser en server constant met elkaar in verbinding te houden. Zonder deze API zou u handige automatische opslagfuncties, het vergrendelen van berichten door samenwerkende ontwikkelaars en live dashboardupdates missen.

  • Beschermt je berichteditor: Tijdens het schrijven of bewerken van een bericht in de WordPress-editor slaat Heartbeat je wijzigingen automatisch elke 15-60 seconden op, zodat je nooit je werk kwijtraakt als je browser of internetverbinding wegvalt.
  • Gebruikersvergrendeling en meldingen: Als twee auteurs tegelijkertijd hetzelfde bericht proberen te bewerken, stuurt Heartbeat meldingen ("Uw teamlid bewerkt dit bericht") en past een vergrendelingsmechanisme toe om conflicten over de inhoud te voorkomen.
  • Realtime dashboardwidgets: E-commerceplugins zoals WooCommerce gebruiken de API om verkoopgegevens in uw dashboard bij te werken zonder dat de hele pagina opnieuw hoeft te worden geladen.
  • Waarschuwingen voor verlopen sessies: Heartbeat kan u waarschuwen als uw inlogsessie is verlopen, zodat u opnieuw kunt inloggen voordat u niet-opgeslagen wijzigingen verliest.

Hoe de Heartbeat API werkt: de basisprincipes

Heartbeat werkt via kleine AJAX-aanroepen naar uw server, waardoor WordPress gegevens kan coördineren zonder dat de pagina volledig vernieuwd hoeft te worden. Deze frequente pings optimaliseren de functionaliteit en beveiliging door ervoor te zorgen dat redacteuren actuele informatie zien en dat sessies geldig blijven.

  • Browser verzendt admin-ajax.php Verzoek: Bij elke tik van de hartslag verstuurt uw browser een klein AJAX-verzoek naar.. /wp-admin/admin-ajax.php.
  • Server verwerkt verzoek: WordPress voert alle gekoppelde functies uit, haalt nieuwe gegevens op en stuurt deze vervolgens terug als een JSON-antwoord.
  • Browser ontvangt en verwerkt: De JavaScript-gebeurtenissen van uw browser vangen het antwoord op, werken de gebruikersinterface bij (bijv. automatisch opslaan, widget vernieuwen) en bereiden zich voor op het volgende interval.

js

// Voorbeeld: Luister naar de volgende heartbeat-tick in de frontend
jQuery(document).on('heartbeat-tick', function(event, data) {
console.log('Heartbeat-reactie ontvangen:', data);
});

  • Standaardinterval : Editorscherm (15 seconden) en Dashboard en andere beheerderspagina's (60 seconden).

Kernhooks en codevoorbeelden

Ontwikkelaars gebruiken de ingebouwde hooks van Heartbeat om aangepaste functies toe te voegen of het gedrag ervan aan te passen. Je kunt de API zo afstemmen dat de benodigde gegevens worden uitgewisseld door gebruik te maken van deze JavaScript- en PHP-events.

JavaScript-hooks

Hieronder staan ​​twee belangrijke JavaScript-hooks die je kunt gebruiken voor front-end controle:

  • hartslag-verzenden: Voeg aangepaste gegevens toe vóór elk verzoek.
  • hartslag-tik: Verwerk de ontvangen gegevens nadat het verzoek is voltooid.

js

// Voeg extra informatie toe aan elke heartbeat-send gebeurtenis
jQuery(document).on('heartbeat-send', function(e, data) {
data.customValue = jQuery('#my-field').val();
});

PHP-hooks

Aan de serverzijde stellen deze hooks je in staat om Heartbeat-oproepen te wijzigen of erop te reageren:

  • hartslag_verzenden: Wijzig de gegevens die de server retourneert.
  • hartslag_ontvangen: Onderneem actie wanneer de server een tick ontvangt.

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;
}

Veelvoorkomende gebruiksscenario's van de WordPress Heartbeat API

De realtime mogelijkheden van Heartbeat vormen de basis voor veel dagelijkse functies in WordPress. Door de synchronisatie tussen server en browser blijven dashboards en editors altijd actueel, zonder handmatige klikken of volledige herlaadacties.

  • Automatisch opslaan en revisies: Heartbeat werkt naadloos in de post-editor en maakt elke 15 seconden een back-up, zodat u verloren content kunt herstellen.
  • Realtime verkoopgegevens: ontwikkelaars van e-commerceplugins gebruiken Heartbeat om actuele verkoopstatistieken op te halen en direct weer te geven.
  • Meldingen bij verlopen sessie: Wanneer uw inlogsessie bijna verloopt, toont Heartbeat een melding: "Klik hier om ingelogd te blijven."
  • Samenwerkingswaarschuwingen: Op sites met meerdere auteurs ziet u wie welk bericht bewerkt, waardoor conflicten door overschrijven worden voorkomen.

Prestatieoverwegingen en hoog CPU-gebruik

Hoewel Heartbeat onmisbaar is voor realtime updates, kan het op drukke websites een flinke CPU-kracht verbruiken. Elke frequente AJAX-aanvraag naar admin-ajax.php verbruikt processortijd en geheugen, waardoor shared-hostingaccounts hun resourcelimieten kunnen overschrijden.

  • Verhoogde CPU-belasting: Frequente Heartbeat API-aanroepen kunnen het CPU-gebruik van uw server aanzienlijk verhogen, vooral bij shared hostingpakketten, omdat elke tick vereist dat PHP een AJAX- verzoek verwerkt.
  • Tragere paginareactietijd: Doordat de server meer van deze verzoeken verwerkt, kunnen de laadtijden van webpagina's en de interactie met het beheerdersdashboard merkbaar trager worden.
  • Risico op schorsing: Als het volume van admin-ajax.php Als uw website de CPU-limieten van uw hostingprovider overschrijdt, kan uw account worden afgeremd of opgeschort totdat het gebruik weer binnen acceptabele grenzen valt.

Hoe kan ik het hartslagverkeer monitoren?

Door de hartslagactiviteit te observeren, kunt u prestatieknelpunten vroegtijdig opsporen. Gebruik serverlogboeken en clienttools om de frequentie van verzoeken en de reactietijden te volgen.

  • Serverlogboeken en -statistieken: Controleer pieken in het CPU-gebruik in cPanel of uw hostingdashboard, met name in.. /wp-admin/admin-ajax.php entries.
  • Browserontwikkelaarstools: Ga in Chrome of Firefox naar de ontwikkelaarstools → tabblad Netwerk → filter op “admin-ajax.php” → bekijk de tickfrequentie en de reactietijd.
  • Plugin-oplossingen: Installeer prestatieplugins (bijv. Query Monitor) om Heartbeat-aanroepen, geheugengebruik en uitvoeringstijd direct in het beheerdersdashboard te bekijken.

Het beheren en beperken van de Heartbeat API

Als het standaardritme van Heartbeat je server overbelast, kun je het selectief vertragen of uitschakelen. Zo kun je een balans vinden tussen realtimefuncties en optimale prestaties en resourcebeheer.

  • Via een plugin: installeer Heartbeat Control of gebruik de ingebouwde instellingen van WP Rocket
  • Via code

//

Verlaag de hartslagfrequentie naar één keer per 60 seconden
add_filter('heartbeat_settings', function($settings) {
$settings['interval'] = 60;
return $settings;
});
// Schakel volledig uit aan de voorkant
add_action('init', function() {
if (!is_admin()) wp_deregister_script('heartbeat');
}, 1);

Risico's van het uitschakelen van de Heartbeat API

Het uitschakelen van Heartbeat kan de CPU-belasting verminderen, maar dit gaat ten koste van een aantal belangrijke functies. Voordat u het sitebreed uitschakelt, is het belangrijk om de afwegingen voor gebruikerservaring en beveiliging te begrijpen.

  • Geen automatische opslag in de klassieke editor → handmatig klikken op "Concept opslaan" is vereist voor elke wijziging.
  • Mogelijk gegevensverlies als de internetverbinding wegvalt tijdens het publiceren/bijwerken.
  • Dashboardwidgets en plug-ins die afhankelijk zijn van Heartbeat zullen niet meer werken, waardoor realtime rapportages en functies minder beschikbaar zullen zijn.

Beste werkwijzen en probleemoplossing

In plaats van Heartbeat volledig uit te schakelen, is het verstandiger om het gedrag ervan te verfijnen. Door Heartbeat selectief te beperken of te loggen, behoudt u de voordelen ervan en zorgt u tegelijkertijd voor een goede servergezondheid.

  • Gas geven, niet afslaan : in plaats van het volledig uit te schakelen, verhoog je het interval van 15 naar 30 of 60 seconden.
  • Testen in stagingomgeving : Voer eerst intervalwijzigingen of de-registratie uit in een stagingomgeving om problemen op te sporen.
  • Combineer met caching : maak gebruik van object- of paginacaching om de extra serverbelasting van Heartbeat te compenseren.
  • Logboekregistratie inschakelen: Haak in hartslag_ontvangen Om ticks te registreren en onverwacht gedrag op te sporen en op te sporen.

Laatste gedachte

De WordPress Heartbeat API houdt je site actief en gesynchroniseerd. Het slaat concepten automatisch op, toont realtime gegevens en voorkomt conflicten tijdens het bewerken. Te veel verzoeken kunnen het CPU-gebruik verhogen. Je kunt de API vertragen of uitschakelen waar nodig. Test wijzigingen eerst op een testomgeving. Met de juiste balans verbetert Heartbeat de functionaliteit zonder de prestaties te beïnvloeden.

Voor meer WordPress-termen en uitgebreide uitleg kunt u de Seahawk Media-woordenlijst .

Gerelateerde berichten

Wat is kleurtint?

Wat is kleurtint?

Kleur speelt een essentiële rol in kunst, design en het dagelijks leven. Het gaat verder dan rood,

Wat is de WordPress-editor?

Wat is de WordPress-editor?

De WordPress-editor is de centrale hub voor het maken en ontwerpen van content binnen een WordPress-website

Wat is het primaire menu in WordPress?

Wat is het primaire menu in WordPress?

Als je net bent begonnen met het bouwen van een WordPress-website, ben je waarschijnlijk de term 'hoofdmenu' tegengekomen

Begin vandaag nog met Seahawk

Meld je aan in onze app om onze prijzen te bekijken en kortingen te ontvangen.