

An event typically contains: a timestamp, an immutable payload (the fact), an optional key for partitioning or routing, and metadata for schema and tracing. Streams let consumers process events in order (often ordered per partition/key in systems like Apache Kafka), replay historical events, and decouple producers from consumers.
Example: Taxi-hailing app (event-driven flow)
To make this concrete, consider a taxi-hailing app. As a ride progresses, the app and related services emit a sequence of events. Different services (dispatch, driver app, billing, telemetry, analytics) consume or produce these events independently. A compact sequence for a typical taxi booking:-
Customer booking request (Event 1)
- The rider taps “Request ride”. The app emits an event with pickup, dropoff, and rider details.
-
Driver accepts booking (Event 2)
- A candidate broadcast is sent to nearby drivers. When a driver accepts, an acceptance event is emitted with driver id, vehicle details, and ETA. The rider app receives the update.
-
Driver arrives and ride starts (Event 3)
- The driver’s app emits an “arrived” event and then a “ride started” event. This triggers status updates and starts billing.
-
Telemetry / route events (Event 4)
- During the ride, the driver’s device sends frequent telemetry (GPS, speed, heading). These high-frequency events support routing, safety, and analytics.
-
Traffic and routing metadata (Event 5)
- Events from traffic services or routing engines capture delays or route changes used to adjust ETA, pricing, or notifications.
-
Trip end and payment settlement (Event 6)
- A trip-completed event triggers payment settlement, receipts, commission calculations, and analytics pipelines.
Who consumes events — quick mapping
Reliable delivery: event streaming platforms
In real systems, events are passed reliably using an event streaming platform — a durable distributed log such as Apache Kafka, or managed services (cloud providers’ streaming offerings). These platforms provide:- Durable storage of events (the append-only log) for replay and recovery
- Message delivery and ordering guarantees (often per partition)
- High throughput and low latency for real-time processing
- Integration points for stream processing frameworks that transform, enrich, and aggregate events
Event streaming platforms serve three core roles: durable storage of events (the log), message delivery to consumers, and stream processing (real-time transformation, enrichment, or aggregation).
Key takeaways
- An event is a recorded fact about something that happened — typically immutable and timestamped.
- An event stream is a continuous sequence of events that systems can consume and react to in real time.
- Event streaming decouples producers and consumers, supports replay, and enables real-time business logic via durable, distributed logs like Apache Kafka.
Links and references
- Apache Kafka — official site
- For conceptual reading: Streaming vs. Messaging patterns
- Stream processing frameworks and platforms: explore Kafka Streams, Flink, and managed streaming services from cloud providers.