[pgpool-general-jp: 1633] pgpool-IIの処理性能について
北村由香
kitamura @ ryobi.co.jp
2020年 9月 1日 (火) 13:37:46 JST
はじめまして、お世話になります。
北村と申します。
現在Pgpool-IIの検証を行っているのですが、アプリケーションを
postgreSQLに直接接続した場合とPgpool-IIに接続した場合で
性能差が出ており、Pgpool-II経由の方が約6倍処理時間がかかっています。
この差が妥当な値なのか、チューニングにより性能改善が見込める
可能性があるのか、ご教示いただきたくメールさせていただきました。
【検証環境】
○PostgreSQL 11
- RHEL 7に構築
- 2台構成で非同期ストリーミングレプリケーションを構築
- スタンバイサーバは遠隔地に配置している
○Pgpool-II 4.0.2
- RHEL 7に構築(DBサーバとは別サーバ)
- コネクションプーリングは使用しない(connection_cache = off)
(javaのコネクションプーリングを使用しているため)
- DBプライマリにアクセスしたいため、
負荷分散は行わない(load_balance_mode = off)
【検証内容】
1トランザクション内で大量SQL(SELECT文やINSERT文)を実行する
アプリケーション(java)について、DB直接接続の場合と
Pgpool接続の場合で、処理時間を測定。
DB直接接続:全体処理時間00:00:30秒(1SQLあたり約3ミリ秒)
Pgpool接続:全体処理時間00:02:58秒(1SQLあたり約19ミリ秒)
⇒pgpool接続の方が1SQLあたり約16ミリ秒遅い
【ご相談事項】
・pgpoolを経由すると、1SQLあたりの処理時間が多く(約6倍)
かかっているのですが、これは妥当なものなのでしょうか?
・Pgpoolで負荷分散とコネクションプールを行わない前提で、
Pgpoolのチューニングにより性能改善策などは考えられますでしょうか?
何かお気づきの点や設定の勘所等をご教示いただければ幸いです。
よろしくお願いいたします。
pgpool-general-jp メーリングリストの案内