heroku pg:diagnose でパフォーマンス確認

データベースの応答が劇的に遅くなるときがあって、原因と解決方法を探そうとしていた。現象が起きているのはHerokuのデモ用の環境だったのだが、本番環境では起きていないのがまだよかったところ…。とりあえず、heroku pg:diagnoseと打つと、健康状態がわかるらしい。

参考URL:https://blog.heroku.com/archives/2014/8/12/pg-diagnose

heroku pg:diagnose --app app-name

こうしたところ、REDが出た。

RED: Hit Rate
Name                    Ratio
----------------------  ------------------
overall table hit rate  0.9375946835977065

GREEN: Connection Count
GREEN: Long Queries
GREEN: Idle in Transaction
GREEN: Indexes
GREEN: Bloat
GREEN: Blocking Queries
SKIPPED: Load
  Error Load check not supported on this plan

このHit Rateが0.99以上であることが正常らしい。これでいえば、93%はメモリにキャッシュされているが、7%はキャッシュされていない。これがとても遅くなる原因なので、次に高いプランにするか、速いプランに変えようって書いてあった。

運用コストを削るためにhobby:basicで運用していたのだが、もし本番環境でこれが頻発するようだったらstandard0にしないとまずそうだ。というか本番環境としての運用はstandard0以上がいいって書いてあるんだけれど。しかし、本番環境以外のデモ環境などについてもstandard0にするとなると、運用コストが跳ね上がる。なにかいい方法を考えなければならない。


カテゴリー システム開発 | タグ   | パーマリンク

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です