On Tue, 19 Oct 2021 at 23:09, Vijaykumar Jain < vijaykumarjain.git...@gmail.com> wrote:
> > On Tue, 19 Oct 2021 at 22:45, Saurav Sarkar <saurav.sark...@gmail.com> > wrote: > >> Hi All, >> >> >> A basic question on handling large number of concurrent requests on DB. >> >> I have a cloud service which can get large of requests which will >> obviously trigger the db operations. >> >> Every db will have some max connection limit which can get exhausted on >> large number of requests. >> >> I know db connection pooling can be used to reuse the connections but it >> will not help when there are large number of active concurrent connections. >> My queries are already optimised and short living. >> >> For that i need some queuing mechanism like pgbouncer for postgres >> https://www.percona.com/blog/2021/02/26/connection-queuing-in-pgbouncer-is-it-a-magical-remedy/ >> >> pgbounder i understand is a proxy which needs to be separately installed >> on the web or db server. >> >> I was thinking if the normal client side db connection pooling libraries >> like Apache DBCP , can also provide similar connection queuing while >> running in the application runtime. >> > > btw there are other options as well to pgbouncer which are in active development, incase you wish to explore. yandex/odyssey: Scalable PostgreSQL connection pooler (github.com) <https://github.com/yandex/odyssey> <https://github.com/yandex/odyssey>pgagroal <https://agroal.github.io/pgagroal/> <https://agroal.github.io/pgagroal/>also, some people ( like myself :) split read/writes and use primary and a set of replicas for connections to handle scale. so a pretty common architecture makes use of Scaling PostgreSQL using Connection Poolers and Load Balancers for an Enterprise Grade environment - Percona Database Performance Blog <https://www.percona.com/blog/2018/10/02/scaling-postgresql-using-connection-poolers-and-load-balancers-for-an-enterprise-grade-environment/>