PgBouncer

Software Screenshot:
PgBouncer
Software Details:
Version: 1.5.4
Upload Date: 14 Apr 15
Developer: Skype Technologies
Distribution Type: Freeware
Downloads: 25

Rating: nan/5 (Total Votes: 0)

PgBouncer does not need to see full network packets at once, so memory usage is very down and limited.

Several levels of brutality when rotating connections occur.

In session pooling,  when the client connects, a server connection will be assigned to it for the whole duration it stays connected. When client disconnects, the server connection will be put back into pool.

In transaction pooling, a server connection is assigned to client only during a transaction.  When PgBouncer notices that transaction is over, the server will be put back into pool. This is a hack as it breaks application expectations of backend connection. The developer can use it only when application cooperates with such usage by not using features that can break. See the table below for breaking features.

In statement pooling (most aggressive method), multi-statement transactions are disallowed. This is meant to enforce "autocommit" mode on client, mostly targeted for PL/Proxy.

Features:

  • Statement pooling
  • Transaction pooling
  • Session pooling
  • Low memory requirements (2k per connection by default).
  • It is not tied to one backend server, the destination databases can reside on different hosts.
  • Supports online reconfiguration for most of the settings.
  • Supports online restart/upgrade without dropping client connections.
  • Supports protocol V3 only, so backend version must be >= 7.4.

What is new in this release:

  • Improved DNS invalidation, KILL command, and more.

What is new in version 1.4.2:

  • Portability fixes. Affected OS-es: *BSD, Solaris, Win32.

What is new in version 1.4.1:

  • IPv6, multiple listen addresses and lot of fixes, esp. around new DNS code.

What is new in version 1.3.4:

  • Apply fast-fail logic at connect time. So if server is failing, the clients get error when connecting.
  • Don't tag automatically generated databases for checking on reload time, otherwise they get killed, because they don't exist in config.
  • Ignore application_name parameter by default. This avoids the need for all Postgres 9.0 users to add it into ignore_startup_parameters=themselves.
  • Correct pg_auth quoting. '\' is not used there.
  • Better error reporting on console, show incoming query to user.
  • Support OS'es (OpenBSD) where tv_sec is not time_t.
  • Avoid too noisy warnings on gcc 4.5.

What is new in version 1.3.3:

  • Improvements:
  • Make listen(2) argument configurable: listen_backlog. This is useful on OS'es, where system max allowed is configurable.
  • Improve disconnect messages to show what username or dbname caused login to fail.
  • Fixes:
  • Move fast-fail relaunch logic around. Old one was annoying in case of permanently broken databases or users, by trying to retry even if there is no clients who want to login.
  • Make logging functions keep old errno, otherwise pgbouncer may act funny on higher loglevels and logging problems.
  • Increase the size of various startup-related buffers to handle EDB more noisy startup.
  • Detect V2 protocol startup request and give clear reason for disconnect.

Requirements:

  • PostgreSQL

Similar Software

minidb
minidb

4 Jun 15

django-mssql
django-mssql

13 May 15

Fang of Mongo
Fang of Mongo

12 Apr 15

Comments to PgBouncer

Comments not found
Add Comment
Turn on images!