Google、Apache モジュール「mod_pagespeed」をリリース 13
ストーリー by reo
スピード凶時代 部門より
スピード凶時代 部門より
hylom 曰く、
Google が「mod_pagespeed」なる Apache モジュールを公開している。このモジュールを導入すると Apache で「15 以上のスピード最適化」が自動的に行われるようになり、Web ページのパフォーマンスが向上するとのこと (Google Webmaster Central Blog の記事より) 。
Google は mod_pagespeed の導入によりページのロードタイムを 50 % にまで削減できると述べており、実際のデモ動画も公開されている。Apache モジュールなので、既存の CMS や Web サイトに変更を加えずに利用できるのもメリットだそうだ。
mod_pagespeed が行ってくれる作業については mod_pagespeed filters で説明されているが、下記のような作業を自動で行ってくれるとのこと。
- Web ページのキャッシュ保持時間の変更
- ページ内に埋め込まれている CSS や JavaScript の外部ファイル化
- 複数の CSS ファイルの連結
- サイズの小さい CSS や JavaScript ファイルをページ内に埋め込み
- 冗長なホワイトスペースの削除
- タグ内の冗長な属性の削除
- コメントの削除
- 不要なクォート文字の削除
- CSS や JavaScript の minify
試してみた (スコア:5, 参考になる)
早速試してみました。
abで負荷をかけてみたけど私の所のサイトでは4割レスポンス速度がアップというところでした。
ですが携帯向けのサイトでCSSやjavaはほぼ使ってないので、そういうのを多用しているところだともっと効果があるかもしれません。
Re: (スコア:0)
逆に4.48秒で読めていたページが6.5秒くらいかかるようになりました。何故かな。内容はWordpressを使ったブログです。
Re:試してみた (スコア:3, 参考になる)
#1853544 さんも ab でベンチをとったと仮定して書きますが
mod_pagespeed はどちらかというと
- クライアント(ブラウザ)に優しく
- 帯域(ネットワーク)に優しく
- サーバに厳しい
ブースターなので、ab などのように単一の HTML ファイルをバルクで取得しても効果は現れません。
そもそも HTML や CSS や JavaScript ファイルにフィルタをかけるのでサーバの負荷があがります。
なので非力なサーバで単一ファイルのベンチをとると、たいてい悪化したように見えるでしょう。
(いちおう、キャッシュディレクトリを指定する箇所があるみたいなので毎回加工はしないと思いますが、
WordPress のように動的なページ生成の場合、都度都度加工される可能性が高い)
どのように加工されるかについては
http://d.hatena.ne.jp/sfujiwara/20101104/1288841616 [hatena.ne.jp]
またどのような最適化がなされるかは
http://havelog.ayumusato.com/develop/server/e165-mod-pagespeed-filters.html [ayumusato.com]
あたりが参考になります。
Re:試してみた (スコア:5, 興味深い)
> どのように加工されるかについては
> http://d.hatena.ne.jp/sfujiwara/20101104/1288841616 [hatena.ne.jp]
このページを見てふと気づいたんですが、
実験例では jQuery を含む複数のJavaScriptファイルがminifyされた1つのファイルに変換されてますけど、
jQuery は MIT ライセンス(とGPLのデュアル)だから
MITライセンスとしてはライセンス表示が必要なので、
minify処理でライセンス表示が消されちゃったらダメですね。
そのあたりのことを考えると
サーバ設定一発のお手軽モジュールじゃなく、
個別の制御が必要になる気がします。
Re:試してみた (スコア:1)
なるほど、これってMinifier全般にあてはまることですよね。
試しにCPAN登録モジュール [cpan.org]を見てみると…結構いいかげん。例が'copyright'=>'BSD License'というのもどうかと。
じゃあminifyされたjQuery [jquery.com]はどうなってるの?と見てみると…使用許諾はURLの先になってます。これってありなんだろうか。
Re:試してみた (スコア:1)
Re: (スコア:0)
Re: (スコア:0)
>jQuery は MIT ライセンス(とGPLのデュアル)だから
>MITライセンスとしてはライセンス表示が必要なので、
>minify処理でライセンス表示が消されちゃったらダメですね。
平然と嘘を書くなよ。「ライセンス表示が消されちゃったらダメ」は
再配布に限った話。minifyまで制限されてたまるかよ。
Re:試してみた (スコア:2, 参考になる)
Re: (スコア:0)
Re: (スコア:0)
javaに関するものは含まれていないようですよ?
javascriptのことを言ってるの?
とりあえず (スコア:2, 興味深い)
テム・レイを思い出した
# いや、中身は古くないだろうけどw;
こりゃいい (スコア:0)
ぜひとも/.JやAmazonでも使ってもらいたいところです(重いので
とはいえ家のPCを重くしてる原因はProxomitronらしいので、これのフィルタを一つ一つ精査するのが先ですな…
# マルチコアに対応したProxomitronをGoogleが作ってくれないものかな…