Skip to content
Tech News
← Back to articles

PgQue: Zero-Bloat Postgres Queue

read original get PostgreSQL Queue Management Tool → more articles
Why This Matters

PgQue revitalizes the proven PgQ queue architecture for modern Postgres environments by implementing it entirely in SQL, eliminating the need for extensions or external daemons. This approach ensures reliable, high-performance queuing on any Postgres platform, including managed services, while avoiding common issues like bloat and performance decay. Its design makes it a robust choice for heavy-loaded systems requiring consistent, ACID-compliant message handling.

Key Takeaways

PgQue – PgQ, universal edition

Zero-bloat Postgres queue. One SQL file to install, pg_cron to tick.

Contents

PgQue brings back PgQ — one of the longest-running Postgres queue architectures in production — in a form that runs on any Postgres platform, managed providers included.

PgQ was designed at Skype to run messaging for hundreds of millions of users, and it ran on large self-managed Postgres deployments for over a decade. Standard PgQ depends on a C extension ( pgq ) and an external daemon ( pgqd ), neither of which run on most managed Postgres providers.

PgQue rebuilds that battle-tested engine in pure PL/pgSQL, so the zero-bloat queue pattern works anywhere you can run SQL — without adding another distributed system to your stack.

The anti-extension. Pure SQL + PL/pgSQL on any Postgres 14+ — including RDS, Aurora, Cloud SQL, AlloyDB, Supabase, Neon, and most other managed providers. No C extension, no shared_preload_libraries , no provider approval, no restart.

Historical context, two decks:

Why PgQue

Most Postgres queues rely on SKIP LOCKED plus DELETE and/or UPDATE . That holds up in toy examples and then turns into dead tuples, VACUUM pressure, index bloat, and performance drift under sustained load.

... continue reading