トリアエズぶろぐ
フリーランスでやってる77世代のWEBプログラマが福岡からのんびりとお送りいたします。
スポンサーサイト


一定期間更新がないため広告を表示しています

<< 第2子誕生! | main | 大名に「大人のためのインテリア」ショップ >>
PostgreSQLをクラスタリングで負荷分散で試行錯誤でorz


最近つなビィのレスポンスが悪い。特に夜間。
LoadAverageが30超えることも。
原因の大半はDBのクエリ待ち。
やはり1台のサーバで全てまかなうのには限界が…。

そこで、思い切ってDBを負荷分散しようと色々とググッていると
PostgreSQLベースのPGClusterというのがなにやらよさげ。
pgpoolと超迷ったけど、将来3台以上の負荷分散をしてみたい欲望とフェイルオーバーの機能に惹かれてPGClusterにひとまず決定。

そして勇気を出してDELLサーバを2台ご購入。
電源入れてさぁ、コーヒーでも飲もうか、とお湯を沸かすとブレーカー落ちたw
うぅ、なんで20Aしかないんだよ、ここ。
電気屋さんに電話して30Aにグレードアップ。
なんだか大掛かりになってきた希ガス。。。

まずはOS入れなきゃ話になんない。いろいろと実験したいので色んなLinuxディストリを入れたかったけど、トラブッたときにはOSが統一されているほうが絶対良いと判断(面倒くさいだけ)したので使い慣れてるコンパクトなVineLinuxで。

Vineで提供されているPostgreSQL7.4.10単体でベンチマークを取ってみる。
(トランザクション数100、3回の平均。上段はクライアント数、下段はtps)
1    2    4    8    16   32   64
614 814 743 680 547 461 336
すげー。やっぱ速いな。そしてサーバ2台でのクラスタリングを試すことに。
PGCluster1.0.10を試行錯誤でインストール、で、いざpgbench!
1    2    4    8    16   32  64
137 147 142 133 110 74 49
なんじゃこりゃー。単体の1/6の性能しかでてないやん!なぜ。。。

PGCluster1.0はPostgreSQL7.3.9がベース。7.4.10単体が格段に性能が良いのか?いや、それは考えにくい…
LANケーブルが10baseな頃の某会社の廃棄品だから?確かにあんまりかもw

ということで、カテゴリ6のLANケーブルを買ってきて、PGCluster1.3.1rc5で再チャレンジです。これでだめならpgpool試すしか。。。!
1    2    4    8    16   32   64
142 150 153 150 140 135 131
うきー!!少しは良くなったものの、あまり状況変わらず。。。

これは、も、もしかしてルータが原因???
そう、つなビィは最近1日に300万近いリクエストがある。
ルータがこの大量のパケットを処理しきれていないのでは。。。
そのルータとは、PLANEXのBRG-04G。確かに、安かった。VPNやギガビットジャンボフレーム対応で非常に重宝しています。しかし、さすがにピーク時1時間に100万リクエスト、7GByteの転送量は厳しいということか…
同じLAN内のTeraStationも妙にレスポンス悪いなーと思ってたんだよなー。
サーバ用NISにしたかったのに、使えねーじゃん!まぁ、仕方が無いか…と割り切っていたけどもしかしたらルータが原因…。

1台のおNEWサーバで単体DBを運用するのもひとつの手だけど、折角2台も買ったし、今後大型案件が転がり込んできた時の実績も作りたい思惑があるため、ここは意地でも超っ速クラスタリングを実現させたいところ。

今度はルータご購入??…orz

続く。かも。
スポンサーサイト


続いて...
| 2006/11/04 09:59
COMMENT









Trackback URL
http://akihiro.jugem.jp/trackback/121
TRACKBACK