Herokuで公開したRails3アプリ(むびりす)が少し重いので改善したくなった。まずは転送量を削減してみる。

前提

  • 30分ごとにpingし、アイドリングを防いでいる
  • Asset Pipelineはもともと有効

やったこと

  • heroku-deflaterを入れて圧縮転送を有効に
  • OptiPNGで圧縮したPNG画像に差し替え
  • 「config.static_cache_control = "public, max-age=2592000"」とした
    (assetsを30日間キャッシュ。デフォルトではCache-Controlヘッダが出力されない)
  • 動的ページのうち可能なものは「Cache-Control: max-age=0, public, must-revalidate」とした
    (デフォルトでは「max-age=0, private, must-revalidate」)

結果

描画のもっさり感が減った。むしろ、サーバの処理待ちが気になる。今度はアクションキャッシュによる処理時間の削減を試してみたい。