- - PR -
ブラウザ解析のパフォーマンス
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2009-02-16 13:24
画面表示に時間がかかり困っています。
どこで時間がかかっているかをベンチマークで計測しました。 サーブレットやJSPの各処理時間を計測しましたが、 それぞれの処理時間は大した時間ではありませんでした。 最も時間がかかっているのは、 サーブレットからJSPにレスポンスのHTMLが返された後の、 ブラウザ解析のようでした。 各処理が全て実行され、画面表示が完了するまで、 真っ白な画面が表示されたままの状態は、 ブラウザ解析を行っている時間と考えて宜しいのでしょうか? また、ブラウザ解析のパフォーマンスを向上させる手段はありますでしょうか? どなたかご存知の方がおられましたら、ご教示頂ければと思います。 宜しくお願い致します。 | ||||
|
投稿日時: 2009-02-16 14:13
以下の書籍が大変参考になります。
「あなたのページを最速にする14の掟」と「High Performance Web Sites」のこと | パフォーマンスチューニングblog | インターオフィス http://www.inter-office.co.jp/contents/85/ | ||||
|
投稿日時: 2009-02-16 14:33
サーバー側じゃなくてブラウザー(クライアント)側の処理時間を言われているのでしょうか? ちなみに、昔からの経験として、サーバー機でブラウザーを同居させて動かして、ブラウザーからサーバーにアクセスすると、ブラウザーが遅くなることがあります。こういうことを避けるために、サーバーのPCとブラウザーのPCは完全に分けたほうが良いと思います。すでにこのようにされているでしょうか? | ||||
|
投稿日時: 2009-02-16 14:50
FirefoxだとFirebugというのがあって、
さらにYSlowという便利なツールもあります。 この辺でブラウザのプロファイリングが可能かと思います。 私の場合は、これで全体としてのパフォーマンスをチューニングしてから、 クロスブラウザ用のチューニングを行うようにしています。 どうしてもDOM操作などで重い場合、全体としての処理量が増えても、 非同期実行にするなど、体感速度を改善するという手法もあります。 例えば1000行×20列のテーブルをDOMで作成しようとすると、 単純に言えばDOMでの追加処理は20000回になります。 (1000行)20000回終わってから描画されるのと、 5行ずつ(100回ずつ)描画されるのでは、 処理のオーバーヘッドを考えると全体では20000回一気の方が速いですが、 体感では100回ずつの方が速くなります。 そのためにforループを使わずに setTimeoutを使ったループに、置き換えるテクニックなどが有効です。 以上参考までに。 [ メッセージ編集済み 編集者: かつのり 編集日時 2009-02-16 14:51 ] | ||||
|
投稿日時: 2009-02-16 15:01
ねんのため。
これは、burton999さんが出されている書籍の情報を自動化したものですね。 | ||||
|
投稿日時: 2009-02-17 11:14
burton999さん
ご指導有難うございます。 書籍、確認させて頂きました。 知らない事が多すぎて驚きました…。 まだまだ改善の余地はありそうです…。 有難うございました。 | ||||
|
投稿日時: 2009-02-17 11:18
unibonさん
ご指導有難うございます。 ブラウザー(クライアント)側の処理時間です。説明不足で申し訳ございません。 サーバ機とブラウザは同居しています…。 これも原因になっているのですね! 今後、分ける事も考慮していきます。 有難うございました。 | ||||
|
投稿日時: 2009-02-17 11:22
かつのりさん
ご指導有難うございます。 FirefoxのFirebugは使っています。 ですが、YSlowというツールは知りませんでした。 まだFirebugも使いこなせていないので、 今回皆さんのお力を頼りにしてしまいました…。 体感速度も大変重要だと思います!同感です!! setTimeoutという手法はこれから調査させて頂きたいと思います。 有難うございました。 |