PHPもPostgreSQLもやったことないのに、そんなシステムを作り直すことになり、運用し始めたら、パフォーマンスがどんどん低下していくというワナにはまったので、ちゃんとメモしておく。PostgreSQLのチューニングには、postgres.confで設定値を変更する方法や、定期的にVACUUMする方法などがあるらしい。今回作ったシステムは、参照よりも更新レコード数が多い場合なので、一日一回VACUUM、REINDEXするという方法が効果的だった。これでも遅くなるようならダンプ&リストアしかないかもしれない。 チューニング方法 測定 postgres.conf トランザクション VACUUM REINDEX ダンプ&リストア システム概要 PHPスクリプトをcronで定期実行 一日の更新レコード数は100万件~150万件程度 PostgreSQL 7.3(既存DBを使う条件なので、新しい

