18 Ağustos 2026 Salı

DRCP - Database Resident Connection Pooling

Giriş
Açıklaması şöyle
Postgres uses a process-per-connection model. Every single connection spawns its own OS backend process, each eating a few MB of memory. So when a crashing service kept reconnecting, we weren't just opening connections. We were forking processes that nobody cleaned up. (Death by a thousand forks, basically.)

The usual fix in the Postgres world is an external pooler like PgBouncer, which sits between your app and the database and multiplexes many clients onto a small set of reused connections.
But here's what I found interesting: Oracle solved this inside the database itself. DRCP (Database Resident Connection Pooling) keeps a shared pool of server processes, so idle connections release their process instead of hoarding it, letting the DB scale to tens of thousands of connections without drowning in memory.

Hiç yorum yok:

Yorum Gönder