DField SolutionsMérnöki stúdió · Budapest
Loading · Töltődik
Skip to content

Event sourcing

Related service Custom software engineering

DEFINITION

State is stored as an append-only stream of events; the current model is rebuilt by replaying the stream or applying a snapshot. Audit, time-travel and debuggability come for free. The cost: read models become separate projections (often paired with CQRS), schema evolution is hard, and the 'what does this event mean' contract is expensive to change. Worth it when audit / replay is a business requirement, not a fashion.

RELATED TERMS06
  • Firmware

    Low-level software that controls a hardware device · microcontroller, router, IoT sensor. Typical languages are C, Rust, MicroPython; OTA-updateability and signing are the critical parts.

  • IoT OTA update

    Over-The-Air firmware update for IoT devices · signed image, staged rollout, rollback switch, telemetry. Lets you update a deployed fleet without physical access.

  • HSM (Hardware Security Module)

    Specialised key-storage hardware · the private key never leaves the HSM, every cryptographic operation runs inside it. Foundation of banking and fintech integrations.

  • OPC-UA

    Industrial communication protocol (IEC 62541) between PLCs, SCADA systems, and higher-level IT. The 2026 standard for manufacturing IT/OT integration.

  • Modbus

    One of the oldest industrial protocols (since 1979) · PLCs, sensors, power meters communicate over it. TCP and RTU (serial) variants exist.

  • CRDT (Conflict-free Replicated Data Type)

    Conflict-free Replicated Data Type. A data structure (counter, set, map, ordered text) that mathematically guarantees that if many peers edit it offline and sync in any order, the result is the same everywhere with no manual conflict resolution. Classic demo: the synced multiplayer cursor, where colleagues type in the same Figma or Notion document at the same time, characters do not overwrite each other, and cursors move live. Problem solved: last-write-wins and manual merge are weak primitives for collaborative editing, offline-first apps, and replicas running at the edge. Two schools: state-based (CvRDT, states can be merged) and operation-based (CmRDT, operations are commutative). In production: Yjs, Automerge, the Loro Rust library, plus Liveblocks and PartyKit as a service. The price: bigger payloads (operation logs) and you need garbage collection.

MENTIONED IN THE BLOG01