PostgreSQL を 8.0 系から,8.1 系に変更.
そのついでに,物理的なサーバをかえた.
自分の家のネットワーク上で,FileServer (NAS) として利用しているサーバをデータベースサーバとした.
理由は… NFS 上で動かすと不安定だったから.
基本的に忙しくないデータベースサーバだったけど,一時的にプロセスが張り付いたままになってしまったりして気持ち良くない状態になっていた.
# 今の所エラーにもなっていないし,気持ち悪いだけだったんだけどね.
なので,物理的にサーバをかえて,ローカルファイルシステム上にデータベースクラスタを作成して動作させる様にした.
# NFS エクスポートされているので,読み出しオンリーで他のサーバでデータベースを作成する事も可能.
というわけで, papu さんの MovableType のコンフィグも弄らせてもらいました.
# 少しは早くなったのだろうか?
Apache も NFS 上のリソース見るときは遅いんだよなぁ…
UDP にすると早いんだろうけど,信頼性ってどうなんだろ?
とか
NFSv4 がちゃんと実装されないかなぁ〜
とか
今年の Google SummerCode での NFS Lock と autofs は期待大だなぁ〜
なんて NFS 周りに思いをはせているのです.
コメント
ウチのpostgresも張り付きました。今日。
本番サーバだったから超焦りました。
プロセスがどんどんメモリ食ってload averageすごい事になりました。
プロセス殺してvacuumしたら落ち着いたんだけど、原因なんだろね?
ちなみにapacheも子プロセスがよくそんな感じになります(worker)。
救出ありがとう!
で、後日談。
ウチで張り付いたpostgresのバージョンは8.1.0でした。
むーん、なんでだろ、と調べまくった結果、max_fsm_pagesを増やしてpostgres再起動して日中vacuumする事にしました。
夜間はvacuumdb -f -a とかでやってたんだけどね。
昼間はvacuumdb -d データベース名 でやってます。
再起動が効いたのか、今のところ負荷も下がって安定しています。
postgresって追記型なんですね。
ちょっと驚きました。