複数のデータベースエントリを含むpgbouncer.ini構成ファイルを設定した場合、pgBouncerはそれぞれに個別のプールを作成しますか?そう思いますが、確認できませんでした。
たとえば、次のようなもので:
[データベース] db1 = ... db2 = ... [pgbouncer] 。 。 。 max_client_conn = 480 default_pool_size = 250
250のデフォルトプール各DBに対しておよび最大480、または合計デフォルトの250および最大480接続両方?
どうもありがとう!
はい、pgbouncerはデータベースごとに個別のプールを作成します。このようなシナリオでは、実際には250のプールサイズは必要ありません。これは、各データベースのpgbouncerからpostgresサーバーへの250接続であるためです。
最大480は、クライアントがどのデータベースにアクセスするかに関係なく、クライアントからpgbouncerへの接続の総数です。
各DBのデフォルトプールは250で、最大は480ですか、それとも合計250のデフォルトと最大480の接続は両方で共有されますか?
ユーザーごとのDBごとに1つのプール(またはロール)があり、[データベース]セクション内のdb1またはdb2行でユーザーを指定することを省略します。ただし、必要に応じて、事前定義されたユーザーとの接続を強制できます。
あなたは何を誤解している_max_client_conn
はです。これは「軽量」接続制限です。データベースサーバーではなくpgbouncerへの最大接続数。