Personal tools
You are here: Home Zope&Plone Tips Squid導入後のスピード検証
Document Actions

Squid導入後のスピード検証

by maru last modified 2007-11-16 17:52

apache->squid->zope/plone 態勢にしたあとでどのぐらいアクセススピードが速くなったのか検証してみます。

【環境】

  • Python-2.4.4 (Linux)
  • PIL-1.1.6
  • Zope-2.9.7-final (Linux)
  • Plone-2.5.3-final
  • squid-2.6.STABLE16

前置き

 さて、『Squid導入でスピードアップ』で、squid を導入した訳なんですが、いろいろアクセスしてみると体感的には速くなったような気がします。で、これが一体どのぐらい速くなったかってのを目に見えるかたちで出してみようかと。

 そこで登場するのが、Firefox と plug-in の Firebug。こいつにはページ全体の読み込み時間を出してくれる機能があるのです。すばらしい。

 んで、測定方法はプロダクト毎に違いが出ると思われるので適当にピックアップして、↑の機能を利用してリクエスト送信からページ読み込みが完了するまでの時間をはかり、Squid 導入前後でどのぐらい変わったか比較。

 あと、出来るだけ条件を揃える為以下の前提条件を設定。

  • Firefox のページキャッシュを 0MB にする(一応キャッシュクリアもしとく)
  • Zope の Data.fs を 0日指定で pack しとく
  • squid 導入後の測定は一回目のページ読み込み時のではなく、F5 等を押して2回目以降で測定 (1回目だとsquid に cache される時間も含まれそうな気がするので)

【検証その1】 トップページ

URL http://www.maruz.net/
使用Product contentpanel
備考 とくになし

トップページ表示速度(導入前)トップページ表示速度(導入後) 5.25s → 1.55s へと速度うp・・・。こりゃすごくね?(・∀・)

 内訳を見ると、document(トップページね)、*.js、*.cssとかの読み込みが速くなってます。ploneScripts6029.js なんかえらい速くなってますな。

 反面、画像系(*.gif、*.jpg)が遅くなってます・・・あれ?

 でも、トータルでは爆速に進化したってことで。

【検証その2】 Blog(1エントリー分)

URL http://www.maruz.net/blog/139/
使用Product COREBlog2
備考 とくになし

Blog表示速度(導入前)Blog表示速度(導入後) 4.22s → 2.79s。これも速度うp。

 ・・・とも素直に喜んでいられない。リクエスト数が違うし、導入前では404コンテンツで異様に時間が掛かってるし(;´Д`)

 ←の右側の画像が Squid 導入後のやつになるんですが、その中の薄い灰色のバーがどうもブラウザ側でキャッシュされたのを読み込んだっぽいです。

 ページキャッシュを0に指定してるんですがなんででしょ?

【検証その3】 ATPhoto(登録画像数=91枚)

URL http://www.maruz.net/album/2006hokkaido/20060902/SS12/
使用Product ATPhoto (ATPhotoAlbum)
備考 リクエストを受けるとその都度生成されるスライドショウ用*.jsファイルがネック?これがキャッシュから読み込まれれば・・・。

ATPhoto表示速度(導入前)ATPhoto表示速度(導入後)  7.58s → 3.86。おおお。これはほぼ2倍速。

 さて、↑の備考にも書きましたがこのネックになってると思われるファイルはというと「slideshow_contents.js」で、1s ぐらい短縮されてますね。これはデカイ。あと、ここではですが、画像系の読み込みも速くなってました。

 うーん。なんかバラツキがある気がするんですが、同一条件ってのは厳しいのかなあ。あと、404コンテンツでさっくり差が出てますw・・・消そうかなぁコレ。

【検証その4】 普通のページドキュメント

URL http://www.maruz.net/motorcyclez/mybike/sbb_1st_impression
使用Product ATContentTypes (Document)
備考 とくになし

Document表示速度(導入前)Document表示速度(導入後) 3.82s → 1.82s。2秒短縮。

 若干キャッシュから読み込まれていて、リクエスト数も違いますが、それでも2秒はでかい。

【検証その5】 ATGoogleMaps 地図 (改造が入ったpolyline描画ver)

URL http://www.maruz.net/touring/2006hokkaido/060808
使用Product ATGoogleMaps (ATMapDocument) ※自作こんてんつ
備考 リクエストを受けてから生成するもの多数。polylineのポイント数やMarkerの数が増えれば増えるほど、時間が掛かる仕様。さらに通常のDocumentも一緒にレンダリングするからもっと最悪w

MapDocument表示速度(導入前)MapDocument表示速度(導入後) 20.13s → 17.15s。・・・取りあえず短縮。

 ページ読み込むだけで転送量が1MB越えてるわ、元々読み込みに20秒も掛かるって一体_| ̄|○ (←今回初めてその悲惨さに気づいた)

 まぁ、map表示の為にgoogleからもいろいろと引っ張ってきてるので純粋に内部だけのレスポンスって訳ではないんですけど、内部のみに目を向けると見方が間違ってるのか導入後で画像系が極端に遅くなってます・・・がトータルでは速い。良く分からん・・・。

 これは squid 云々より、処理の見直しを計った方がいいかもしれない(;´Д`)

【検証その6】 ATGoogleMaps のkmlファイル (改造入り)

URL http://www.maruz.net/touring/2006hokkaido/060808/gmap.kml
使用Product ATGoogleMaps (ATMapDocument) ※自作こんてんつ
備考 kmlファイルそのものが鯖上にあるわけではなく、こいつもリクエストを受けてから生成してブラウザに送ります。だから、これこそキャッシュから送れば劇的に速くなるはず。

kmlファイルダウンロード速度(導入前)kmlファイルダウンロード速度(導入前) 15.04s → 12.27s。取りあえず短縮してますが・・・。

 予想のナナメ上を行った結果となりました。ファイルそのものとしてキャッシュする訳ではないのかなあ。ファイルサイズを見ていただけると分かりますが、これだけのサイズをDLするのに12秒も掛かる訳がありません。生成してるっぽいです。

 これは squid 、CacheFu のチューニングが必要かもしれません・・・。

まとめ

 測定方法がイマイチで、正確な比較ってのは出来ませんでしたが、でもまあ全体的なスピードアップは確実な感じです。体感出来てりゃいいっしょ・・・てことで。(←本末転倒)

 ちなみにこの測定はLAN内でやっているのでこのような速度が出ています。WAN経由だと・・・微々たるもんかもしれません(;´Д`) みかかさんよ、とっとと光回線引いてくれ・・・お願いですから(;´Д⊂)