Por qué creamos PgDog: Un pooler de conexiones para Postgres sin abstracciones fugitivas

Why we built yet another Postgres connection pooler

Por qué creamos PgDog: Un pooler de conexiones para Postgres sin abstracciones fugitivas

Creamos PgDog porque los poolers existentes como PgBouncer obligan a sacrificar funciones clave de Postgres, como SET y LISTEN/NOTIFY. Nuestra solución en Rust utiliza un parser SQL integrado para mantener el estado de sesión sin tocar tu código. Además, nuestro diseño multihilo en Tokio escala linealmente, eliminando la necesidad de fragmentar pools y mejorando la eficiencia ante picos de tráfico.

Si no puedes usar una característica de tu base de datos, estás haciendo un compromiso y tienes que cambiar cómo escribes tus aplicaciones.
  1. AdieuToLogic

    El hecho de que PgDog soporte sentencias preparadas[0] es una característica convincente por sí misma. Esta fue una limitación de las versiones antiguas de pgpool-II[1], lo que lo descalificaba en esfuerzos donde de otro modo podría haber sido beneficioso.

    0 - https://docs.pgdog.dev/features/connection-pooler/prepared-s...

    1 - https://www.pgpool.net/docs/4.7/en/html/

  2. 27183

    Es genial ver AGPL en lugar de las horribles variantes de BSL que han estado circulando.

  3. abrookewood

    Una nota rápida para decir que el artículo que describe POR QUÉ son diferentes y por qué importa está muy bien escrito. ¡Felicidades por el lanzamiento!

Más de este día

2026-07-07