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.-