Event store
messagingevent-store
Append-only replicated event log that is the system of record.
- Category
- Messaging
- Properties
- 6
- Components
- 5
- Rules
- 1
A node of this kind resolves each property from its own props, then the component's defaults, then the default below.
| property | type | values | required | default |
|---|---|---|---|---|
| journaled | boolean | — | no | true |
| managed | boolean | — | no | false |
| replication | enum | none | raft | primary-replica | no | none |
| role | enum | journal | sequencer | no | journal |
| snapshotIntervalEvents | integer | — | no | — |
| storage | enum | mmap | rocksdb | database | no | database |
stateful-engine-pinned-to-single-zone
A matching engine, coordination service or event store living in exactly one availability zone, with no failover and no replication, is lost with that zone. Everything that depends on it stops with it.
- — all of these hold:
- — the node sits inside exactly 1 availability-zone group
- — any of these hold:
- — the node's `failover` is "none"
- — the node's `replicated` is false
- — the node's `replication` is "none"
vendor-neutral
# yaml-language-server: $schema=../schema/kind.schema.json # Append-only, replicated event log that is the system of record (event sourcing, exchange journals, sequencers). # Differs from stream: state is derived from it and it is snapshotted; role sequencer marks the single writer that orders events. schemaVersion: "1" type: "kind" id: "event-store" category: "messaging" properties: replication: type: "enum" values: ["none", "raft", "primary-replica"] default: "none" journaled: type: "boolean" default: true snapshotIntervalEvents: type: "integer" storage: type: "enum" values: ["mmap", "rocksdb", "database"] default: "database" role: type: "enum" values: ["journal", "sequencer"] default: "journal" managed: type: "boolean" default: false