[pgsql-jp: 33748] Re: 北海道支部勉強会「 pgpool 」
Tatsuo Ishii
t-ishii @ sra.co.jp
2004年 7月 23日 (金) 12:51:01 JST
石井です.
> > これご推測通りです.unix domain socketにした方がかなりいいです.です
> > から,同じboxの中に,Apache+PHP+pgpoolを入れたセットをたくさん用意し
> > てその前に負荷分散装置を置くと,性能面で有利になるだけでなく,可用性
> > の向上にもつながると思います.
> >
>
> そうですよね。そう思って、そういう構成もしてるんですが
> 複数のpgpoolから、一つのPostgreSQLへアクセスすると
> PostgreSQLのコネクションが不足してしまいます。
> PostgreSQLのコネクション数を、増やしても、性能は下がりますよねえ。
> かといってpgpoolのコネクション数を減らすのも、なんだかなあですし。
そんなことはないと思いますよ.たとえばApache/PHP/pgpoolを入れたWebサー
バが10台あり,PostgreSQLはコネクション数100で最大の性能が得られるとし
ます.このケースでは,それぞれのpgpoolのnum_init_childrenを10に設定し
ておけばシステム全体で最大の性能が得られるはずです.
# 単純化のために,PostgreSQLへのアクセスユーザ/DB名のペアは1種類しかな
# いものとしています.
ApacheのMaxClientsの設定が10より多い場合,pgpoolへの接続で待たされる
Apache プロセスも出てきますが,PostgreSQLの性能が出ていれば,結果とし
て待機中のApacheプロセスがよりすばやく処理されるようになるので,ユーザ
から見たレスポンスはむしろよくなるはずです.
> また、複数のDBクラスタのある、PostgrSQLサーバに対して
> pgpool経由でアクセスすると、pgpoolは、DBクラスタ単位に
> コネクション確保するので、やはり、コネクション数が不足してしまいます。
よくわからなかったのですが,もしかして「DBクラスタ」ではなくて,単に
「DB」ですか?
--
Tatsuo Ishii
pgsql-jp メーリングリストの案内