web-dev-qa-db-ja.com

PgBouncerはデータベース構成エントリごとに個別のプールを作成しますか?

複数のデータベースエントリを含むpgbouncer.ini構成ファイルを設定した場合、pgBouncerはそれぞれに個別のプールを作成しますか?そう思いますが、確認できませんでした。

たとえば、次のようなもので:

 [データベース] 
 db1 = ... 
 db2 = ... 
 
 [pgbouncer] 
 
。
。
。
 max_client_conn = 480 
 
 default_pool_size = 250 

250のデフォルトプール各DBに対しておよび最大480、または合計デフォルトの250および最大480接続両方?

どうもありがとう!

6

はい、pgbouncerはデータベースごとに個別のプールを作成します。このようなシナリオでは、実際には250のプールサイズは必要ありません。これは、各データベースのpgbouncerからpostgresサーバーへの250接続であるためです

最大480は、クライアントがどのデータベースにアクセスするかに関係なく、クライアントからpgbouncerへの接続の総数です。

6
Magnus Hagander

各DBのデフォルトプールは250で、最大は480ですか、それとも合計250のデフォルトと最大480の接続は両方で共有されますか?

ユーザーごとのDBごとに1つのプール(またはロール)があり、[データベース]セクション内のdb1またはdb2行でユーザーを指定することを省略します。ただし、必要に応じて、事前定義されたユーザーとの接続を強制できます。

あなたは何を誤解している_max_client_connはです。これは「軽量」接続制限です。データベースサーバーではなくpgbouncerへの最大接続数。

3
Zorg