Queueing Network — Fleet Telemetry Ingest
A 4,000-message-a-second vehicle telemetry pipeline across gateway, decoder, enrichment, a bounded rule engine pool and column storage, with a replay loop from the dead-letter path back into decoding.
Make it your own.
title "Connected vehicle telemetry — ingest at peak"
target 80%
rate unit /s
arrivals "Edge gateway" 4000/s
station "Edge gateway" { servers: 22; service: 4ms }
station "Protobuf decoder" { servers: 48; service: 9ms; cv: 1.2 }
# Enrichment does a geospatial lookup whose tail is dominated by cache
# misses on rarely visited tiles.
station "Geo enrichment" { servers: 90; service: 18ms; cv: 1.8 }
# The rule engine pool is bounded: work beyond it is shed to the replay
# topic rather than queued, so this station is M/M/c/K.
station "Rule engine" { servers: 160; service: 30ms; capacity: 400 }
station "Column store write"{ servers: 70; service: 14ms }
station "Dead letter replay"{ servers: 10; service: 45ms }
route "Edge gateway" -> "Protobuf decoder" 1.0
route "Protobuf decoder" -> "Geo enrichment" 0.96
route "Protobuf decoder" -> "Dead letter replay" 0.04
route "Geo enrichment" -> "Rule engine" 1.0
route "Rule engine" -> "Column store write" 0.88
route "Rule engine" -> exit 0.12 # suppressed duplicates
route "Column store write" -> exit 1.0
route "Dead letter replay" -> "Protobuf decoder" 0.7
route "Dead letter replay" -> exit 0.3