We scaled PgBouncer to 4x throughput
clickhouse.com
We scaled PgBouncer to 4x throughput
1–10 of 67 posts
Re: We scaled PgBouncer to 4x throughput
#2[pgbouncer] listen_addr = 0.0.0.0 listen_port = 6432 so_reuseport = 1 peer_id = 1 unix_socket_dir = /tmp/pgbouncer1
[peers] 1 = host=/tmp/pgbouncer1 2 = host=/tmp/pgbouncer2 3 = host=/tmp/pgbouncer3 4 = host=/tmp/pgbouncer4
Re: We scaled PgBouncer to 4x throughput
#3Re: We scaled PgBouncer to 4x throughput
#4Clickhouse's so_reuseport rendezvous needs are obviously for a very different, but fun to see some so_reuseport coordination like this (for a much more practical use)!
It'd be really neat to have some kind of general peering protocol that different apps could use. This whole exercise was gratuitous as heck for my application, I don't even really intend to use this, but it was a fun path to walk down. So I don't really know what the broader protocol would really be for, what we would use it for. But it seems like such a cool idea! A shared Turso database would probably be a bit more practical than the rpc system, honestly. Ha.
Re: We scaled PgBouncer to 4x throughput
#5Re: We scaled PgBouncer to 4x throughput
#6Re: We scaled PgBouncer to 4x throughput
#7Re: We scaled PgBouncer to 4x throughput
#8Just use https://github.com/yandex/odyssey :) It's a scalable PgBouncer.
Re: We scaled PgBouncer to 4x throughput
#9Was there a disadvantage to using HAProxy + multiple PGBouncer instances?
Re: We scaled PgBouncer to 4x throughput
#10Interesting. We run pgbouncer via kubernetes so it was straightforward to make multiple pgbouncer processes on one machine. Also straightforward to get them running on multiple machines, which helps because we run on Azure and they like to cause rolling outages across our fleet via VM maintenance...