Re: Connection pooling for differing databases?

From: Moreno Andreo <moreno(dot)andreo(at)evolu-s(dot)it>
To: pgsql-general(at)lists(dot)postgresql(dot)org
Subject: Re: Connection pooling for differing databases?
Date: 2019-03-07 19:39:34
Message-ID: 877c818f-1902-ebb7-e882-c7689627a08b@evolu-s.it
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Il 07/03/2019 20:27, Arjun Ranade ha scritto:
> Hi all,
>
> I'm wondering if there's a tool like pgpool that can provide a single
> origin point (host/port) that will proxy/direct connections to the
> specific servers that contain the db needing to be accessed.
Yes, I think there are many, but I'm encouraging you to take a look at
pgbouncer

https://pgbouncer.github.io/

in pgbouncer.ini you enter database configuration values like

database = host=hostname port=xyzk, like
mydb1 = host=cluster1 port=6543 or
mydb2 = host=cluster1 port=9876
mydb3 = host=cluster2 port=6543

but there many other parameters to refine your config (like "proxying"
database names, so if you share names across clusters you can easily
avoid conflicts)

Pgbouncer should be installed on the same server as the databases or in
another and listens on a different port than Postgres' (say 5431 while
postgres is on 5432)
I'm actively using in my environment with 2 clusters and about 500
databases, works flawlessly.

One thing you have to consider, if under heavy workload (say 100's of
connections) is to raise kernel value of maximum open files

Cheers

Moreno.-

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Bill Haught 2019-03-07 19:41:19 Re: Future Non-server Windows support???
Previous Message Fabrízio de Royes Mello 2019-03-07 19:35:16 Re: Connection pooling for differing databases?