Message delivery

Articles on message delivery guarantees: guaranteed versus unreliable delivery, what each costs in throughput, and delayed or scheduled delivery.

4 articles

Aug 3, 2026 · Andrii Glushko

@imqueue vs NATS: a framework and a transport are not the same choice

NATS is a messaging system; @imqueue is an RPC framework that happens to use one. Comparing them means deciding how much of the contract you want to write yourself — and whether your fleet is Node-only.

read →
Jul 31, 2026 · Serhiy Morenko

One notification, every replica: the LISTEN/NOTIFY duplicate problem

LISTEN/NOTIFY is a broadcast, not a queue. Scale a Node app to three replicas and the same notification gets handled three times — no error, no warning, three charges on the card. Here's why, and what an inter-process lock actually does about it.

read →
Jul 25, 2026 · Mykhailo Stadnyk

Delayed and scheduled work without adding a job system

"Send that email in 24 hours" usually turns into a second deployment, a second data model, and a job record shadowing a service method you already wrote. Often the message queue you already run can just do it. Here's how deferral works as a parameter, and what it costs.

read →
Jul 7, 2026 · Mykhailo Stadnyk

Guaranteed message delivery: cost and when to use it

"Will I lose messages if a worker dies?" is the right question — and the answer is a trade-off, not a yes/no. Here's how guaranteed delivery works, what it costs, and how to choose per workload.

read →