3 Repos
Mechanisms that detect and resolve inconsistencies between distributed data sources by reacting to specific state-change events.
Explore 3 awesome GitHub repositories matching data & databases · Event-Driven State Reconciliation. Refine with filters or upvote what's useful.
Syncthing ist eine dezentrale Dateisynchronisierungs-Engine, die konsistente Datenzustände über mehrere Geräte hinweg durch Peer-to-Peer-Mesh-Netzwerke aufrechterhält. Es arbeitet als Hintergrund-Daemon, der Dateierstellungen, -änderungen und -löschungen automatisch zwischen vertrauenswürdigen Knoten repliziert, ohne dass zentrale Server erforderlich sind. Durch die Verwendung von inhaltsadressierbarer Blockindizierung und Block-Level-Delta-Synchronisation identifiziert und überträgt das System nur die geänderten Segmente von Dateien, was eine effiziente Datenverbreitung in heterogenen Umgebungen gewährleistet. Das Projekt zeichnet sich durch eine sicherheitsorientierte Architektur aus, die auf gegenseitiger TLS-Authentifizierung basiert, um die Geräteidentität zu verifizieren und sicherzustellen, dass alle Verbindungen kryptografisch an vertrauenswürdige Zertifikats-Fingerabdrücke gebunden sind. Es unterstützt flexible Synchronisationsmodi, einschließlich bidirektionaler Replikation, unidirektionaler Spiegelung für Backups und referenzbasierter Durchsetzung. Für zusätzliche Privatsphäre bietet das System eine ordnerbasierte Verschlüsselung für nicht vertrauenswürdige Geräte und ermöglicht eine granulare Kontrolle über den Netzwerkverkehr, einschließlich der Möglichkeit, Vorgänge auf lokale Netzwerke zu beschränken oder Relay-Infrastruktur für NAT-Traversal zu nutzen. Über die Kernfunktionen der Replikation hinaus bietet die Plattform umfassende Verwaltungstools, darunter ein webbasiertes Dashboard zur Überwachung von Verbindungsstatus und Durchsatz sowie eine Befehlszeilenschnittstelle für fortgeschrittene Konfigurationen. Es enthält robuste Versionierungsstrategien zum Schutz vor Datenverlust und unterstützt komplexe Bereitstellungsszenarien durch native Service-Integration und Observability-Metriken. Die Software ist für plattformübergreifende Kompatibilität ausgelegt und kann über Standard-Paketmanager oder containerisierte Umgebungen installiert werden.
Triggers incremental state reconciliation across the network in response to filesystem events detected by local watchers.
Zigbee2mqtt is a service that functions as a bridge between Zigbee radio signals and the MQTT messaging protocol. It acts as a smart home hardware controller, enabling the management and communication of sensors, lights, and switches through local USB or network-based radio adapters. The project serves as a network manager for local mesh environments, handling the pairing of new hardware and the ongoing administration of device connections. It translates proprietary radio payloads into standardized data structures using a declarative schema, ensuring that device states are reconciled in real
Maintains synchronized device properties by processing radio events and updating the broker state in real time.
Mercure ist ein HTTP-basierter Message-Broker und Echtzeit-Pub/Sub-Server, der asynchrone Daten-Updates an autorisierte Abonnenten routet. Er fungiert als zentraler Hub, der Daten über Standard-HTTP-Requests empfängt und sie mittels des Server-Sent-Events-Protokolls an Web-Clients überträgt. Das Projekt zeichnet sich dadurch aus, dass es WebSockets durch eine unidirektionale HTTP-Verbindung ersetzt und HTTP/2 sowie HTTP/3 für multiplexte, latenzarme Übertragung nutzt. Es implementiert eine sichere Zugriffskontrollschicht unter Verwendung von JSON Web Tokens (JWT) und JSON Web Signatures (JWS), um die Identität von Publishern und Abonnenten zu validieren, und unterstützt End-to-End-Payload-Verschlüsselung via JSON Web Encryption (JWE). Das System deckt Hochverfügbarkeits-Clustering und horizontale Skalierung für ereignisgesteuerte Architekturen ab, einschließlich der Wiederherstellung der Event-Historie, um verpasste Updates nach Client-Verbindungsabbrüchen zu synchronisieren. Die operative Oberfläche umfasst Leistungsüberwachung, Client-Presence-Tracking und Request-Throttling. Der Hub kann als selbstgehostetes Binary, innerhalb containerisierter Umgebungen wie Kubernetes oder über einen Managed-Provisioning-Service bereitgestellt werden.
Implements mechanisms to recover missed updates after connection loss by reconciling state based on event identifiers.