ServersMan@VPS (CentOS) mod_pagespeed のインストール


あなたのサイトも最高2倍速に?!Google純正のサイト高速化モジュール『mod_pagespeed』だと・・・
で、紹介されていた Google 製の Apache モジュール「mod_pagespeed」を ServersMan@VPS に導入してみました。

動作環境

・CentOS
・Apache 2.2.3 (2.2ならOKらしい)

2010/11/05 追記
導入後、error_log が大量に吐かれたあげく、apacheのプロセスは上がったまま無反応になったので、しばらく利用はやめておきます。導入する方は気をつけてください(´・ω・`)


インストール

一瞬で終わります。
公開鍵のインポート

wget https://dl-ssl.google.com/linux/linux_signing_key.pub
rpm --import linux_signing_key.pub

ダウンロード + インストール

wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-beta_current_i386.rpm
yum localinstall mod-pagespeed-beta_current_i386.rpm

apache リブート

/etc/init.d/httpd restart

確認

mod_pagespeed が有効になると、普通にやると面倒な以下の最適化を自動でやってくれます。導入してソース見るとすぐわかるはず。

  • CSSの1本化(複数あるとひとつにまとまる)
  • CSS、JavaScript の最小化(無駄なコメントやスペースの排除)
  • 小さなイメージファイルの Base64化

実際早くなったのか? Apache Bench

導入前

Concurrency Level:      1
Time taken for tests:   36.033 seconds
Complete requests:      30
Failed requests:        0
Write errors:           0
Total transferred:      1809840 bytes
HTML transferred:       1803450 bytes
Requests per second:    0.83 [#/sec] (mean)
Time per request:       1201.105 [ms] (mean)
Time per request:       1201.105 [ms] (mean, across all concurrent requests)
Transfer rate:          49.05 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:       11   12   1.4     12      16
Processing:   854 1189 154.6   1172    1697
Waiting:      326  516  62.4    526     637
Total:        866 1201 154.6   1186    1709

導入後

Concurrency Level:      1
Time taken for tests:   37.111 seconds
Complete requests:      30
Failed requests:        0
Write errors:           0
Total transferred:      1955820 bytes
HTML transferred:       1947150 bytes
Requests per second:    0.81 [#/sec] (mean)
Time per request:       1237.045 [ms] (mean)
Time per request:       1237.045 [ms] (mean, across all concurrent requests)
Transfer rate:          51.47 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:       11   13   1.8     12      20
Processing:  1073 1224  96.8   1210    1433
Waiting:     1016 1160  90.5   1148    1370
Total:       1085 1237  97.1   1222    1446

ab の結果だけ見るとむしろ悪化してます。これは、イメージのBase64化(HTMLに直接書く)によるHTMLの肥大化が影響しているのではないかなと思います。

実際早くなったのか? vmstat

ab してる間に vmstat 1 で計測してみました。

導入前

procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------
 7  0      0 363216      0      0    0    0     0     0    0 3242 84  4 11  0  0
 2  0      0 363216      0      0    0    0     0     0    0 3247 93  5  2  0  0
 2  0      0 363216      0      0    0    0     0     0    0 2978 93  5  2  0  0
 2  0      0 363216      0      0    0    0     0     0    0 2926 90  5  5  0  0
 2  0      0 363216      0      0    0    0     0     0    0 3389 93  5  2  0  0
 2  0      0 363216      0      0    0    0     0     0    0 3368 86  7  7  0  0
 1  0      0 363216      0      0    0    0     0     0    0 2774 93  7  0  0  0
 8  0      0 363216      0      0    0    0     0     0    0 2794 93  5  2  0  0
 2  0      0 363216      0      0    0    0     0     0    0 2599 90  5  5  0  0
 2  0      0 363216      0      0    0    0     0     0    0 2964 89  7  5  0  0
 2  0      0 363216      0      0    0    0     0     0    0 3395 82  4 13  0  0
 2  0      0 363216      0      0    0    0     0     0    0 2626 95  2  2  0  0
 1  0      0 363216      0      0    0    0     0     0    0 3013 90  5  5  0  0
 8  0      0 363216      0      0    0    0     0     0    0 2899 93  7  0  0  0
 2  0      0 363216      0      0    0    0     0     0    0 2892 90  5  5  0  0
 2  0      0 363216      0      0    0    0     0     0    0 3287 83  4 13  0  0
 2  0      0 363216      0      0    0    0     0     0    0 3092 93  5  2  0  0
 2  0      0 363216      0      0    0    0     0     0    0 3103 93  2  5  0  0
 2  0      0 363216      0      0    0    0     0     0    0 3485 88  7  5  0  0
 8  0      0 363216      0      0    0    0     0     0    0 3015 98  3  0  0  0
 2  0      0 363216      0      0    0    0     0     0    0 3272 88  7  5  0  0
 1  0      0 363216      0      0    0    0     0     0    0 2925 86  7  7  0  0
 1  0      0 363216      0      0    0    0     0     0    0 2897 90  5  5  0  0
 2  0      0 363216      0      0    0    0     0     0    0 2966 88  7  5  0  0
 8  0      0 363216      0      0    0    0     0     0    0 2998 93  7  0  0  0
 2  0      0 363216      0      0    0    0     0     0    0 2901 93  2  5  0  0
 2  0      0 363216      0      0    0    0     0     0    0 3375 93  5  2  0  0
 1  0      0 363216      0      0    0    0     0     0    0 3797 88  7  5  0  0
 1  0      0 363216      0      0    0    0     0     0    0 3019 93  5  2  0  0
 7  0      0 363216      0      0    0    0     0     0    0 3255 95  5  0  0  0
 9  0      0 363216      0      0    0    0     0     0    0 2934 91  5  5  0  0
 2  0      0 363216      0      0    0    0     0    20    0 3173 91  2  7  0  0
 2  0      0 366636      0      0    0    0     0     0    0 3062 86  9  5  0  0

導入後

procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------
 1  0      0 405464      0      0    0    0     0     0    0 2551 73  8 19  0  0
 4  0      0 384744      0      0    0    0     0     0    0 6214 85  7  7  0  0
 0  0      0 382652      0      0    0    0     0     0    0 2787 84  5 11  0  0
 0  0      0 381616      0      0    0    0     0     0    0 2701 80  6 15  0  0
 0  0      0 381616      0      0    0    0     0     0    0 2649 85  6 10  0  0
 0  0      0 372420      0      0    0    0     0     0    0 2753 81  5 14  0  0
 0  0      0 363224      0      0    0    0     0     0    0 2955 78  9 14  0  0
 0  0      0 363216      0      0    0    0     0     0    0 2565 79  7 14  0  0
 0  0      0 363216      0      0    0    0     0     0    0 2639 81  6 13  0  0
 0  0      0 363204      0      0    0    0     0     0    0 2648 79  5 16  0  0
 0  0      0 363192      0      0    0    0     0     0    0 2840 82  4 15  0  0
 0  0      0 363180      0      0    0    0     0     0    0 2637 82  4 15  0  0
 0  0      0 363180      0      0    0    0     0     0    0 2657 79  5 16  0  0
 0  0      0 363168      0      0    0    0     0     0    0 2522 80  6 15  0  0
 0  0      0 363156      0      0    0    0     0   316    0 2471 78  5 16  0  0
 0  0      0 363144      0      0    0    0     0     0    0 3016 83  3 14  0  0
 0  0      0 363144      0      0    0    0     0     0    0 2583 79  5 16  0  0
 0  0      0 363132      0      0    0    0     0     0    0 2578 80  6 15  0  0
 0  0      0 363120      0      0    0    0     0     0    0 2508 81  4 15  0  0
 0  0      0 363100      0      0    0    0     0     0    0 2617 79  5 16  0  0
 2  0      0 362936      0      0    0    0     0     0    0 13458 91  6  4  0  0
 0  0      0 362912      0      0    0    0     0     0    0 2965 83 10  8  0  0
 0  0      0 362880      0      0    0    0     0   452    0 3642 78  5 16  0  0
 0  0      0 364532      0      0    0    0     0     0    0 3082 82  5 13  0  0
 0  0      0 364252      0      0    0    0     0     0    0 2669 81  5 14  0  0
 0  0      0 364232      0      0    0    0     0     0    0 2594 81  4 15  0  0
 0  0      0 364216      0      0    0    0     0     0    0 2631 80  5 14  0  0

メモリはどちらも大差なし、ディスクIOも同様ですが、CPUが平均10%ほど下がってます
導入前は、ほとんど90%超だったのが、導入後、90%超えたのは一度だけです。CSSの1本化、イメージのBase64化によるセッション数減少が効いているんじゃないかと思います。

まとめ

  • 最初からそれなりに最適化されてるサイトは効果が薄い(当たり前だけど)
  • イメージ大量、CSS、JavaScriptも大量なコンテンツはかなり効果があるのでは
  • 損はなさそうなので問題が起こらないなら入れとくか

トラブったら、/etc/httpd/conf.d/pagespeed.conf をリネーム (pagespeed.conf.org とか) して apache リブートすれば導入前に戻ります。

One Response to ServersMan@VPS (CentOS) mod_pagespeed のインストール

  1. […] ★ServersMan@VPS (CentOS) mod_pagespeed のインストール – てもぐ […]

コメントを残す

メールアドレスが公開されることはありません。

Top