Adana ayyuka a time-bucketed / priority queue da aka key da lokacin da suka kamata, ka poll ayyukan da suka kamata yanzu kawai, kuma ka miƙa su ga idempotent workers da at-least-once delivery. Kada ka taɓa scan rows miliyan 10 kowane tick — yi index da fire time domin kowane poll ya taɓa abin da ya kamata kawai.
Gine-gine
API ─▶ Task store (DB/Redis ZSET, score = due_ts) ── 10M tasks, sharded
│
Poller (leader per partition) ── ZPOPMIN due<=now ──▶ Ready queue (Kafka)
│ leader election (etcd/ZK) │
▼ ▼
other pollers idle/standby Worker pool (idempotent)
└─ ack ✔ / retry ✖ ─▶ DLQ
