我需要配置pgbouncer以便与超过2000个客户端连接一起使用,我正在阅读有关如何使用最大连接数的信息,然后我了解了在pgbouncer上必须执行max_client_con = 2000的操作,但是default_pool_size呢,它们,问题不止是寻求一些支持,以了解在大型客户端连接上配置pgbouncer的正确方法
postgres.conf
port = 5432 # (change requires restart)
max_connections = 100 # (change requires restart)
unix_socket_directory = '/var/run/postgresql' # (change requires restart)
pgbouncer
[pgbouncer]
logfile = /var/log/postgresql/pgbouncer.log
pidfile = /var/run/postgresql/pgbouncer.pid
listen_addr = 127.0.0.1
listen_port = 6432
unix_socket_dir = /var/run/postgresql
auth_type = md5
auth_file = /etc/pgbouncer/userlist.txt
admin_users = carlos
pool_mode = statement
server_reset_query = DISCARD ALL
max_client_conn = 100
default_pool_size = 20
如果您可以在“事务池模式”下运行pgbouncer,那么最好。有一些功能,如果使用将不起作用,但是如果您不使用它们,则无法使用。
然后,default_pool_size控制pgbouncer和PostgreSQL之间的连接数,将其保持在20左右可能是个好主意。这意味着您可以在系统中同时进行20个活动事务,并且从您正在执行的操作的描述中似乎不太可能。但是,您希望将该值调整为在所需的最大并发交易数量上具有“合理保证金”的值。然后pgbouncer会很高兴在这20个接口上多路复用2000个连接,从而在数据库端保持良好的性能。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句