Skip to main content

YU11-aeron-replication architecture

Dual-capable BLP replication: File-backed NATS remains the default and rollback path, while Aeron reliable unicast plus SBE and per-pod Archive sidecars provide a measured replication alternative, exact follower-journal durable watermarks, shadow validation, Archive catch-up, and an opt-in direct-heartbeat plus atomic-witness failover path.

  • Inherits architectural baseline from: YU10-fix-ingress (which inherits the full YU02..YU09 LMAX/Kubernetes lineage)
  • Generated from: system/architecture.model.json
  • Canonical flows: architecture.md

Architecture Diagram​

Node Catalog​

NodeKindLabelNotes
ingressexternalREST + FIX ingressUnchanged YU10 entrypoints publish authorized commands onto the multi-producer input ring.
primary_ringqueuePrimary input ringExisting Disruptor ring. Journaler and selected replication handler consume in parallel; matching/risk waits behind both.
primary_journalstorePrimary Journaler + PVCBusiness durability authority. Forces drained batches before journaledSeq advances.
transport_selectorserviceDelegating replication selectorBLP_REPLICATION_TRANSPORT selects NATS or Aeron; optional Aeron shadow runs with NATS authoritative.
nats_replicationqueueFile-backed NATS replicationInherited default and rollback path using TRADERX_BLP_REPLICATION plus follower ACK subject.
primary_aeronserviceAeronReplicator + SBE encoderClaims publication buffers and writes fixed 64-byte input records in place; tracks durable ACKs and policy state.
primary_sidecarservicePrimary Archiving Media DriverReliable unicast media driver plus Archive recording on the primary pod PVC under a one-core budget.
follower_sidecarserviceFollower Archiving Media DriverReceives/records live data and serves/consumes replay for follower catch-up.
follower_aeronserviceAeronReplicationFollowerValidates handshake/schema/epoch/sequence, decodes into the follower input ring, and maintains fixed sequence mappings.
follower_ringqueueFollower input ringExisting Disruptor topology for journal and matching/risk apply.
follower_journalstoreFollower Journaler + PVCAdvances the exact post-force journaled watermark consumed by the durable ACK agent.
follower_blpserviceFollower matching/risk applyApplies replicated inputs after journaling; applied watermark is independently required for promotion readiness.
ack_agentserviceDurable ACK agentCoalesces highest contiguous mapped sequence at or below Journaler.journaledSeq and returns epoch/sequence/recording position.
snapshot_archivestoreSnapshot bundle + Archive replayChecksummed bootstrap boundary and recorded tail used for retained-volume and empty-volume follower catch-up.
leaseserviceKubernetes LeaseSynchronous default promotion authority and asynchronous reconciliation backstop in fast-witness mode.
fast_witnessstoreNATS KV fast witnessAtomic compare-and-set tiebreaker after direct heartbeat staleness; exact revision/epoch enters the admission fence.
admission_fenceservicePrimary admission fenceOpens only for a current default Lease proof or fast witness revision; closes on foreign or ambiguous proof before ring claim.