Skip to content
All posts
Engineering

Real-time vs batch: what actually matters

Not every metric needs sub-second latency. Here is how to decide what to watch live and what to review on a slower cadence.

LeifCo-founder6 min read

Real-time is not always better. It is more expensive to operate, harder to debug, and often unnecessary for decisions that happen weekly, not hourly.

Stream what drives action

Signup funnels, checkout drop-offs, traffic spikes after a launch, and live visitor counts benefit from immediate visibility. If someone on your team can fix the problem in the next hour, stream the event and watch it on the realtime page.

Batch what informs strategy

Week-over-week retention, quarterly planning, and long-range trend analysis rarely need live updates. Hourly and daily rollups keep historical queries fast without forcing every chart to refresh every second.

How dumbledor handles both

Events hit ingest and show up in the live stream within a second. A background worker rolls them into hourly and daily aggregates in Postgres so overview charts and breakdowns stay snappy over 7, 30, or 90 day ranges.

Uptime checks follow the same split. Monitor status updates in near real time, while incident history and response-time charts read from stored check results. The best stacks mix streaming and aggregation. dumbledor does both without asking you to configure pipelines.