Redmineを実行しているサーバの負荷が高くなるのを調べる

Redmineの実行をpassengerにしてみたものの本日Load Avarage 200とかになっていた・・・

やはり本格的に調べないといけないのかと思いつつ。cactiの過去データからいつ負荷が高くなっていたのか調べてみると微妙な規則性があることがわかった。

1/8 07:00
1/30 03:00
2/3 03:00, 05:00
2/13 07:00
2/14 04:00
2/20 07:00
2/28 08:00

この過去データからわかることは「朝に負荷が高くなる」ということと「時計の長いはりが0のときに負荷が高くなる」ということである。

さて、一つだけ思い当たる節がある。Redmineにはリポジトリのデータを表示する機能があるがRedmineはWebサーバなのでアクセスがあるタイミングでリポジトリのデータを読みに行く。それが好ましくないと思いcronで毎時リポジトリの同期スクリプトを実行していたのである。

ruby script/runner "Repository.fetch_changesets" -e production

だいぶ怪しいのでこれを止めてまたしばらく様子を見てみよう。