MovableTypeが重い(遅い)ので実行速度を計測してみた。

テストケース

管理画面に既にログインした状態から、

  1. 管理画面のダッシュボードを表示
  2. ダッシュボード画面で、ブログの「記事を作成」をクリック
  3. ブログ記事入力画面でテキストを入力して、プレビューボタンをクリック
  4. プレビュー画面が出たら、「このブログ記事を編集する」をクリック
  5. 編集画面に戻ったら、「未公開(原稿)」で保存をクリック
  6. 完了しました画面を表示

自分の利用シーンでは非常によくあるケースです。

測定方法

Google Chromeの"Developer Tools"を使用。
mt.cgiのTime Latencyの時間を見ました。

movabletype_time.PNG
つまり、CGI実行時間とHTML転送時間のみを対象としています。
CSS・画像のダウンロード時間やJavascriptの実行時間は含まれていません。

サーバ環境

DTI VPSサーバ Entryプラン(月額490円)です。

Apache,MySQLなどはCentOSにyumで入れたものです。
Perlはシステムデフォルトのものです。
MySQLのテーブルストレージエンジンはMyISAM(MTをインストールしたときのデフォルト)です。
Memcachedは入れてません。

ソフトウェアバージョン
CentOS5.6
Apache2.2.3
MySQL5.0.77
Perl5.8.8

MovableType以外に余計なサービスは動かしていません。

クライアント環境(デスクトップPC)

Windows XP Pro SP3
Google Chrome
Intel Pentium4 2.66GHz
メモリ1.5G

測定結果(秒数)

アクション1回目2回目3回目平均
ダッシュボードを表示5.89 7.38 6.10 6.46
「ブログ記事の作成」画面を表示7.02 7.43 6.31 6.92
プレビューを表示6.88 8.39 6.79 7.35
編集画面を表示6.16 7.42 6.40 6.66
保存7.13 7.27 6.37 6.92
合計33.08 37.89 31.97 34.31

1画面平均6~7秒かかっていることがわかりました。
5アクション合計だと30秒以上もかかっています。

とりあえず現状把握ができたので一歩前進です。
さあ、ここからどうやって高速化してやろうか。
カテゴリ: