Home » October 2007 » MT4のmt-search.fcgiの性能

MT4のmt-search.fcgiの性能

mt-searchがどうこうという話 - Ogawa::Memorandaの続き。

MT4標準のmt-searchの性能をFastCGI環境でもう少し詳細に調べてみた。ベンチマークの条件は、

  • MT 4.01 + FastCGI環境。
  • デフォルト(No Cache)、MemcachedLocalを使った場合(MemcachedLocal)、Memcachedを使った場合(Memcached)の3つを比較。
  • MaxResultsは10,20,40,60,80,100でそれぞれ測定。
  • 検索処理(Search)、レンダリング処理(Render)、それ以外(Misc.)に要する時間をそれぞれ計測。
  • 計測は20回のシーケンシャルリクエストの最良値と最悪値を除いた値を平均化。
  • 対象データはこのブログのある時点でのスナップショット。

まず、デフォルトテンプレートによる検索時間の結果。

MemcachedLocalを用いることで最大約23%の全体処理時間の短縮が実現できている。レンダリング処理に限れば40%以上の時間短縮が期待できる。

Memcachedを用いることで、MemcachedLocalと同様にレンダリング処理の時間短縮が期待できる。ただし、検索処理自体に要する時間が増加しているため、効果が相殺されてしまい、MaxResultsの値が大きい領域でしか高速化できない。Memcachedを用いた場合には、データベースからロードされたデータ本体もキャッシュされるため、そのオーバーヘッドがあるものと思われる。

次に、デフォルトテンプレートからメタ情報(MTEntryCommentCount, MTEntryPingCount)の表示部分を削除したテンプレートによる検索時間の結果。

MemcachedLocalを用いてもほとんど高速化されない。微妙に速くなっているが測定誤差の範囲。Memcachedとの組み合わせで検索処理が遅くなるのは、メタ情報ありの場合と共通している。

数値データコミコミで以下で公開。

Google ドキュメント - MT4: mt-search.fcgi performance

Comments and Trackbacks