Urgent.News

What's breaking now, across thousands of outlets.

Tech

Realtime Event Retention Policy: Scaling Delivery Tracking Maps Through 3 Recovery Windows

Short answer: keep a short, lossless stream for reconnects, a compact snapshot for backfill, and discard movement noise once the map has caught up. That split scales realtime event delivery without pretending a tracking map needs an eternal event log. The awkward part is choosing the boundary. A courier's typing indicator (the dispatcher is composing a note) wants seconds of retention. A read…

Realtime event retention plays a crucial role in scaling delivery tracking maps. The policy involves three recovery windows: a short, lossless stream for reconnects, a compact snapshot for backfill, and discarding movement noise once the map has caught up. The key is to distinguish between transient hints and business transitions.

A courier's typing indicator only needs seconds of retention, while a read receipt requires a durable state transition. GPS markers demand the latest position, not every recorded point while the phone is underground. Treating all these as events leads to inefficiency and slow reconnects.

Retention tiers should be based on actual usage patterns like reconnect frequency and the oldest useful update in your fleet. Implement a recovery contract where every message includes a monotonically increasing sequence, event type, and server timestamp. Use per-delivery or per-channel counters to avoid unnecessary contention.

Implement a bounded stream with expiry based on server time. On reconnect, reject older cursors with a "snapshot_required" response and send the current delivery state followed by new events. Provide a snapshot containing necessary information such as marker position, status, last receipt state, and field versions. Use idempotent apply and log cursor, selected branch, and snapshot version but exclude sensitive data like driver notes or tokens.

During an outage scenario, test the policy by simulating a lost handset connection and verifying the client renders the latest snapshot, applies deltas in order, and shows the receipt state. Measure the performance of fan-out during backfill and test the policy with time by freezing the server clock and reconnecting with "oldest - 1".

Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.

Read the original at dev.to →

More in Tech

We submitted a Bangla POS app to 50 directories. Here is what actually happened.

Tukri is a point-of-sale, stock and dues-book app for small shops in Bangladesh. It has a free plan and works offline. When we wrote our outreach plan on 21 October, Search Console showed a single…

  • Tukri submitted to 50 directories, aiming for listings.
  • Six directories featured live Tukri pages, including Crunchbase and GitLab.
  • Submission process faced delays, rejections, and CAPTCHA issues.

Kubernetes Resource Requests and Limits (2026): Set Them Right and Prevent OOMKilled & FailedScheduling

TL;DR Requests are what the scheduler spends; limits are what the kernel enforces. A pod is placed based on its requests, and killed or throttled based on its limits.

  • Requests guarantee minimum resources for containers, while limits cap maximum usage
  • Scheduler uses requests for node capacity planning, kernel enforces limits via cgroups
  • Memory limits prevent OOMKilled, CPU limits allow throttling if exceeded

More from Saturday 31 October →