Gebeurtenistijd registreert wanneer een gebeurtenis in huis plaatsvond, terwijl verwerkingstijd registreert wanneer de automatiseringsengine die gebeurtenis evalueert.
Een deursensor kan om 18:00 uur een gebeurtenis registreren, het bericht tijdens een mesh-storing bufferen en het om 18:03 uur bij de homeserver afleveren. Logica op basis van verwerkingstijd behandelt de gebeurtenis als actueel; logica op basis van gebeurtenistijd plaatst haar in de eerdere volgorde. Deze keuze beïnvloedt venstertoewijzing, volgorde, replay en latentie, vooral wanneer draadloze apparaten opnieuw verbinding maken of de automatiseringsserver na uitval achterstallige gegevens verwerkt.
De twee klokken beschrijven verschillende delen van één gebeurtenispad
Gebeurtenistijd hoort bij de waarneming zelf: wanneer de knop werd ingedrukt, de meting werd uitgevoerd of de beweging begon. Verwerkingstijd hoort bij de automatiseringsruntime: wanneer de worker het record ontving en evalueerde. Ze vallen alleen samen wanneer transport, buffering, planning en klokafwijking verwaarloosbaar zijn.
gebeurtenistijd en verwerkingstijd lopen uiteen door netwerk-, buffer- en verwerkingsvertraging. Deze componenten variëren, waardoor de volgorde van aankomst kan verschillen van de volgorde van optreden, zelfs wanneer elke afzonderlijke sensor correct publiceert.
Thuis systemen voegen nog een complicatie toe: apparaatklokken kunnen onjuist zijn of ontbreken. Een veld voor gebeurtenistijd is alleen nuttig wanneer de bronklok en de betekenis van de tijdstempel betrouwbaar zijn. Verwerkingstijd is altijd beschikbaar op de server, maar beschrijft het aflevergedrag in plaats van de fysieke volgorde in de ruimte.
Verwerkingstijd bevordert onmiddellijke reactie
Automatisering op basis van verwerkingstijd vergelijkt een record met de serverklok zodra het binnenkomt. Dit is eenvoudig en snel voor regels zoals een waarschuwing bij de huidige CPU-belasting of het inschakelen van een lamp na een live druk op een knop. De automatisering hoeft niet te wachten op eerdere berichten die mogelijk nog onderweg zijn.
gebeurtenisstreamverwerking legt de nadruk op het reageren op doorlopende gebeurtenissen zodra ze binnenkomen, waarbij timing en volgorde belangrijk zijn voor bewerkingen met status. Het voordeel van lage latentie wordt een nadeel voor de correctheid wanneer vertraagde records worden geïnterpreteerd als nieuwe omstandigheden in plaats van als late informatie over een eerdere toestand.
Replay maakt het verschil duidelijk. Als de gebeurtenissen van vorige week vandaag worden verwerkt, plaatsen vensters op basis van verwerkingstijd ze rond de klok van vandaag, tenzij speciale logica de oorspronkelijke tijdstempels herstelt. Een gereconstrueerde bezettingsgeschiedenis of trainingsdataset kan daardoor veranderen afhankelijk van het moment waarop de replay werd uitgevoerd.
Gebeurtenistijd bewaart de volgorde, maar moet wachten op vertraging
Logica op basis van gebeurtenistijd wijst records aan vensters en reeksen toe met behulp van de ingebedde tijdstempels van optreden. Een bewegingsgebeurtenis die vóór het openen van een deur is gegenereerd, blijft eerder plaatsvinden, ook als ze later aankomt. Dit maakt historische herverwerking consistenter en beschermt functies die zijn gebaseerd op duur of volgorde.
gebeurtenisverwerking op basis van gebeurtenistijd gebruikt tijdstempels, watermarks en verwerking van late gegevens, omdat de engine niet direct kan weten of elke eerdere gebeurtenis al is aangekomen. Langer wachten verbetert de volledigheid, maar vertraagt definitieve resultaten en houdt de status langer open.
De afweging is zichtbaar in automatiseringen. Een toegestane vertraging van één seconde kan lampen responsief houden, maar een batterij sensor missen die een minuut vertraagd is; een lange toegestane vertraging levert nauwkeurige analyses op, maar is ongeschikt voor directe aansturing. Veel woningen hebben behoefte aan een snelle voorlopige actie en latere correctie, in plaats van één tijdsbeleid voor elke regel.
Opnieuw verbinden verandert oude status in nieuwe aankomsten
Draadloze apparaten, brokers en integraties kunnen berichten in de wachtrij plaatsen of bewaren terwijl abonnees niet beschikbaar zijn. Bij het opnieuw verbinden kan de server een reeks berichten ontvangen waarvan de verwerkingstijden dicht bij elkaar liggen, ook al beslaan de onderliggende gebeurtenissen minuten of uren. Regels die door aankomst worden aangestuurd, kunnen reageren alsof de reeks het heden beschrijft.
Dit verklaart waarom bewaarde berichten de toestand van een woning na een herstart kunnen veranderen. Een bewaarde momentopname van de status, een opdracht in de wachtrij en een nieuw gegenereerde gebeurtenis hebben verschillende betekenissen, ook wanneer ze hetzelfde topic delen en tijdens dezelfde verbindingsherstelactie aankomen.
Tijdstempels alleen lossen de onduidelijkheid niet op. De automatisering moet weten of een record een status, een overgang, een opdracht of een replay vertegenwoordigt. Statusupdates kunnen de huidige waarde veilig vervangen, terwijl een oude opdracht “ontgrendelen” doorgaans moet worden afgewezen door versheidscontroles in plaats van laat te worden uitgevoerd.
Gebruik tijdsemantiek per automatiseringsresultaat
Kies verwerkingstijd wanneer een onmiddellijke reactie belangrijker is dan het exact reconstrueren van het verleden en vertraagde records veilig kunnen worden genegeerd. Kies gebeurtenistijd voor tijdsduren, reeksen, bezettingsgeschiedenissen, energievensters, modelkenmerken en elke berekening die na een replay hetzelfde resultaat moet opleveren.
tijdsvolgorde wordt onbetrouwbaar wanneer de aankomst afwijkt van de tijdstempel die de gebeurtenis bevat. Tests moeten vertraging, duplicatie, reeksen berichten na een herstart en klokafwijking injecteren en vervolgens zowel onmiddellijke acties als gecorrigeerde geschiedenis vergelijken.
Een hybride ontwerp werkt vaak het beste: reageer voorlopig bij aankomst, wijs verouderde gevaarlijke opdrachten af en werk de analytische status bij op basis van gebeurtenistijd. De grens wordt bepaald door de verwachting van de gebruiker. Een lamp moet niet minuten wachten op een perfecte volgorde, terwijl een bezettingsrapport gisteren niet moet herschrijven volgens de verwerkingstijd van vandaag.
Tech & AI HUB
Meer om te lezen

Why Jellyfin Home-Server Architecture Changes as You Add Services
A Jellyfin box becomes a service stack as more apps are added, so CPU, storage, network, secrets, backups, and recovery boundaries need explicit ownership.

How to Measure Jellyfin Performance Without Mistaking Cache for Capacity
A reliable Jellyfin benchmark labels cold and warm state separately so cached metadata or filesystem pages are not mistaken for permanent hardware capacity.

How Much iGPU Headroom Does Multi-User Jellyfin Need?
Jellyfin iGPU headroom is workload-specific: reserve margin above the hardest repeatable concurrent transcode mix, not an arbitrary utilization percentage.

