このチュートリアルでは、Apache用のGoogle mod_pagespeedモジュールを高速のメモリ内キャッシュMemcachedと組み合わせて使用することにより、Webサイトのページ読み込み時間を改善する方法を示します。ページの読み込み時間は、検索エンジンで良いランキングを取得するための重要な要素です。現在の読み込み時間をテストできます。 GooglePageSpeedInsightsツールまたはFirefoxWebブラウザの開発者ツールを使用します。 Pagespeedは、ブラウザに配信される前にウェブサイトのコンテンツを最適化してキャッシュするApache 2モジュールです。その結果、ページが読み込まれ、サーバーのシステム負荷が軽減され、サーバーは1秒あたりにより多くのページを配信できるようになります。 。 Mod_pagespeedはデフォルトでファイルシステムキャッシュを使用します。このチュートリアルでは、ファイルシステムキャッシュをMemcachedに置き換えます。これは、読み込み時間をさらに改善する高速のメモリ内キャッシュデーモンです。このチュートリアルは、あらゆる種類のapacheセットアップと互換性があります。UbuntuLAMPサーバーを
mod_pagespeedのインストール
Googleは、32ビットおよび64ビットのUbuntuインストール用にmod_pagespeed.debパッケージを提供しています。
32ビットまたは64ビットパッケージが必要かどうかを確認するにはどうすればよいですか?コマンドを実行します:
uname -a
コマンドの結果は、以下のスクリーンショットのようになります。
コマンドに文字列「x86_64」が含まれている場合、システムは64ビットLinuxカーネルを実行します。この場合、64ビットUbuntu用に以下に提供されているコマンドを使用してください。
Ubuntu64ビット (現在のほとんどのサーバーのデフォルト)
cd /tmp
wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_amd64.deb
dpkg -i mod-pagespeed-stable_current_amd64.deb
Ubuntu32ビット
cd /tmp
wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_i386.deb
dpkg -i mod-pagespeed-stable_current_i386.deb
次に、Apache2を再起動してmod_pagespeed構成をロードします。
service apache2 restart
Memcachedのインストール
MemcachedデーモンはUbuntuリポジトリで.debパッケージとして利用でき、apt:
でインストールできます。apt-get -y install memcached
コマンド「netstat-tap|grep memcached」を実行して、Memcachedが開始されているかどうかを確認します。
netstat -tap | grep memcached
netstatコマンドの結果は次のようになります:
[email protected]:/tmp# netstat -tap | grep memcached
tcp 0 0 localhost:11211 *:* LISTEN 1687/memcached
Memcachedが実行されているポートを太字でマークしました。 mod_pagespeed構成のポート番号を知る必要があります。
mod_pagespeedだけでなく、PHPベースのアプリケーションからMemcacheを使用する場合は、PHPmemcahed拡張機能をインストールします。
apt-get install php5-memcached
Memcachedを使用するようにmod_pagespeedを構成します
エディターでpagespeed.confファイルを開きます。ここでnanoエディターを使用します:
nano /etc/apache2/mods-available/pagespeed.conf
「ModPagespeedMemcachedServers」という行を検索します:
[....]
# ModPagespeedMemcachedServers localhost:11211
[....]
行の前にある#を削除して、結果の行が次のようになるようにします。
[....]
ModPagespeedMemcachedServers localhost:11211
[....]
サーバーに十分なメモリがある場合は、この行の前にある#を削除することでさらに高速化できます:
[....]
ModPagespeedCreateSharedMemoryMetadataCache "/var/cache/mod_pagespeed/" 51200
[....]
次に、Apache2サーバーを再起動して新しい構成をアクティブにします。
service apache2 restart
これで、mod_pagespeedはMemcachedをストレージバックエンドとして使用します。 ncコマンドを使用してMemcachedから使用統計を取得できます:
echo stats | nc 127.0.0.1 11211
[email protected]:/tmp# echo stats | nc 127.0.0.1 11211
STAT pid 1687
STAT uptime 134
STAT time 1440931897
STAT version 1.4.14 (Ubuntu)
STAT libevent 2.0.21-stable
STAT pointer_size 64
STAT rusage_user 0.000000
STAT rusage_system 0.008000
STAT curr_connections 5
STAT total_connections 6
STAT connection_structures 6
STAT reserved_fds 20
STAT cmd_get 0
STAT cmd_set 0
STAT cmd_flush 0
STAT cmd_touch 0
STAT get_hits 0
STAT get_misses 0
STAT delete_misses 0
STAT delete_hits 0
STAT incr_misses 0
STAT incr_hits 0
STAT decr_misses 0
STAT decr_hits 0
STAT cas_misses 0
STAT cas_hits 0
STAT cas_badval 0
STAT touch_hits 0
STAT touch_misses 0
STAT auth_cmds 0
STAT auth_errors 0
STAT bytes_read 6
STAT bytes_written 0
STAT limit_maxbytes 67108864
STAT accepting_conns 1
STAT listen_disabled_num 0
STAT threads 4
STAT conn_yields 0
STAT hash_power_level 16
STAT hash_bytes 524288
STAT hash_is_expanding 0
STAT expired_unfetched 0
STAT evicted_unfetched 0
STAT bytes 0
STAT curr_items 0
STAT total_items 0
STAT evictions 0
STAT reclaimed 0
END
[ctrl] + cを押して、コマンドプロンプトに戻ります。
次に、ウェブサイトの速度をもう一度テストします。 PageSpeedInsightsを使用します。ウェブサイトのトラフィックがまだ少ない場合は、適切な結果を得る前に、キャッシュを埋めるためにウェブページを数回リロードする必要があるかもしれません。
- Googleページスピードツール
- memcached.org