たった3行加えるだけで、ページの読み込み時間を劇的に改善させる『class.compressor.php』

SPONSORED LINK

Pocket

speed.jpg

ちょっと使ってみたい、という意味でエントリー。ページの読み込み時間を劇的に改善するためのPHPのスクリプトです。

使い方は簡単、以下のとおりです。

  1. class.compressor.phpをダウンロード
  2. こちらからどうぞ。

  3. ページの頭に次のコードを追加。
  4. require_once('class.compressor.php'); //Include the class. The full path may be required
    $compressor = new compressor('css,javascript,page');
    
  5. ページの最後に次のコードを追加。
  6. $compressor->finish();
    

    これによって、ファイルを圧縮してくれたり、サーバーへのリクエストを少なくしてくれたり、といった処理をしてくれます。

    同サイトではデモもありますね。確かにベンチマークをとるまでもなく、速くなっていることがわかります。

コメント欄をみていると主にWordPressのスピードアップに活用されている方が多いようですね。最近WordPressが遅くて・・・という方は試されてみてはいかがでしょうか。

ちなみにこういうスピードアップ系はなんらかのトレードオフがあるかと思うのですが・・・どうなのでしょうか・・・技術に詳しい方がいらっしゃったら教えてください・・・。

元記事は以下からどうぞ。詳細な使い方、便利なオプションなどが紹介されています。

» Improve website load time by 500% with 3 lines of code | Aciddrop.com

ツイッターもやっています!

SPONSORED LINK

  1. す、すばらしい!!
    トレードオフが気になる・・・・・

  2. 使ってみたわけじゃないので想像ですが、トレードオフについて。

    JavaScriptについて言えば、スペース・改行・コメントを削除して連結してるようなので、こういうトレードオフが考えられます。
    ・クライアントサイドのJavaScriptデバッグが困難になる。
    ・行末のセミコロンを書いてない場合など、文法的に破綻して動作がおかしくなる場合がまれにあると予想される。
     (参考:JavaScriptを圧縮・難読化する時の注意点 http://blog.asial.co.jp/233

    あと、多分リクエスト時に圧縮処理を行ってるのでサーバ負荷が上がるんじゃないかなあと思います。

    • kokoromo
    • January 22nd, 2008

    これはCSS/JavaScriptを1つのファイルにまとめて記述し、JavaScriptの圧縮(短縮できる変数名などを短縮するなど)を行っているようです。

    参考:
    1つのファイルにJavaScriptとCSSをまとめて記述する方法:phpspot開発日誌
    http://phpspot.org/blog/archives/2007/05/javascriptcss_1.html

    JavaScriptとCSSの両方を圧縮できる「YUI Compressor 2.0」リリース:phpspot開発日誌
    http://phpspot.org/blog/archives/2007/09/javascriptcssyu.html

    • 通りすがり
    • January 22nd, 2008

    圧縮処理の負荷がサーバに掛かるので、回線速度が問題にならない環境なら圧縮しない方がよいかと。

  3. 試していないので比較できませんが圧縮するだけならPHP本体が持っている

    zlib.output_compression
    または
    ob_gzhandler

    の方が良いかも知れません。

    キャッシュヘッダを正しく送ってリバースプロキシを入れれば圧縮のオーバーヘッドも気にならなく… と言ってもスクリプトにちょっと書き足すだけで速くなるのは便利ですね。

    • ゆう
    • January 24th, 2008

    技術的な側面とは違いますが
    異なるライセンス(たとえばGPLなど)下にある
    JavaScriptが一つのファイルにまとめられてしまった結果
    意識せずにライセンス違反を犯してしまうという
    危険性はあると思います

  1. No trackbacks yet.