Terug naar blog

Reliability · 1 jul 2026

Realtime vertaalupdates moeten nuttig zijn, niet vereist

Live status is waardevol, maar vertaalbewerkingen moeten correct blijven werken wanneer realtime-infrastructuur niet beschikbaar is of bewust is uitgeschakeld.

Realtime vertaalupdates moeten nuttig zijn, niet vereist

Het is nuttig om een vertaling van in wachtrij naar bezig naar gereed te zien gaan. Teams kunnen de voortgang zien zonder te verversen, voltooid werk snel openen en een mislukte aanvraag opmerken terwijl de release nog actief is.

Maar live updates zijn een presentatiemogelijkheid. Ze mogen niet het mechanisme zijn dat de workflow correct maakt.

Duurzame status komt eerst

De database en het jobsysteem moeten eigenaar zijn van de vertaalstatus. Elke faseovergang moet worden vastgelegd, of er nu wel of geen browser is verbonden:

  • aanvraag in wachtrij
  • vertaling gestart en voltooid
  • push gestart en voltooid
  • publicatie gestart en voltooid
  • mislukking- en herhalingsgebeurtenissen

Een realtime-gebeurtenis kan die duurzame wijziging aankondigen. Het mag niet het enige verslag zijn dat de wijziging heeft plaatsgevonden.

Dit onderscheid beschermt gebruikers die het tabblad sluiten, netwerktoegang verliezen of werken in een omgeving waarin websocket-infrastructuur is uitgeschakeld.

Realtime heeft operationele kosten

Broadcasting introduceert meer bewegende delen: een websocketservice, autorisatie van verbindingen, kanaalconfiguratie, proxy-ondersteuning en herverbindingsgedrag van de browser.

Voor teams die live coördinatie nodig hebben, kunnen die kosten de moeite waard zijn. Voor een kleinere deployment kan gewoon pollen eenvoudiger en volledig toereikend zijn.

Door realtime opt-in te maken, kan elke omgeving het operationele profiel kiezen dat zij kan ondersteunen zonder het kernvertalingsgedrag te verliezen.

Ontwerp een sierlijke fallback

De UI moet via realtime-gebeurtenissen of periodieke verversing dezelfde eindstatus bereiken.

Een praktische aanpak is:

  1. laad de huidige duurzame status
  2. abonneer je op relevante gebeurtenissen wanneer realtime is ingeschakeld
  3. voeg binnenkomende updates samen op aanvraag-ID en versie
  4. poll met een bescheiden interval zolang er actief werk overblijft
  5. stop met frequent pollen wanneer de batch een terminale status bereikt

Realtime laat het scherm direct aanvoelen. Pollen dicht gaten na herverbindingen en biedt een fallback.

De twee paden mogen geen concurrerende statusregels creëren.

Voorkom dat updates ruis worden

Niet elke interne gebeurtenis hoort in de interface thuis. Het broadcasten van elke token, worker-heartbeat of tussentijdse opslag kan de pagina onstabiel maken en de infrastructuur zwaarder belasten.

Gebruikers hebben meestal betekenisvolle faseovergangen en bijgewerkte aantallen nodig. Het groeperen van snelle laag-niveauwijzigingen in een kleinere set duurzame mijlpalen houdt de ervaring rustig en scanbaar.

Hetzelfde principe geldt voor meldingen. Een voltooide batch kan aandacht verdienen. Elke voltooide locale waarschijnlijk niet.

Test het stille pad

Het is gemakkelijk om met realtime ingeschakeld te testen en aan te nemen dat de fallback werkt. Betrouwbaarheid vereist de tegenovergestelde oefening:

  • schakel broadcasting uit
  • start een batch met meerdere locales
  • verlaat de pagina en keer terug
  • bevestig dat de voortgang is bijgewerkt
  • probeer een mislukte aanvraag opnieuw
  • verifieer de uiteindelijke aantallen en beschikbare acties

Als dat pad werkt, is realtime een verbetering in plaats van een verborgen afhankelijkheid.

De kern

Live updates verbeteren vertaalbewerkingen wanneer ze boven op duurzame status staan.

Leg elke overgang eerst vast, maak broadcasting configureerbaar en behoud een afgewogen polling-fallback. De workflow moet betrouwbaar blijven, zelfs wanneer het meest directe leveringskanaal niet beschikbaar is.