mod_mem_cacheによるチューニング 
この本を読んでてチューニングを真剣に考えてみました。
cho氏のサービスをうちのサーバで稼働させて頂いてますが、どうもレスポンスが悪い様子。
ページ遷移にやたらと時間がかかる。。。
まずはapacheのチューニングと思いmod_caheを導入してみた。
apacheはソースからコンパイルしているので、モジュールの追加を実施。
インストールされているモジュールの確認
# /opt/httpd/bin/httpd -l
モジュールのビルド&インストール(モジュール追加)
# cd /usr/local/src/httpd-2.2.11/modules/cache/
# /opt/httpd/bin/apxs -c mod_cache.c
# /opt/httpd/bin/apxs -ian mod_cache mod_cache.la
# /opt/httpd/bin/apxs -c mod_mem_cache.c
# /opt/httpd/bin/apxs -ian mem_cache mod_mem_cache.la
# /opt/httpd/bin/apxs -c mod_disk_cache.c
# /opt/httpd/bin/apxs -ian disk_cache mod_disk_cache.la
ここまでやったのだが、どうもモジュールをうまく読み込んでくれない。。。
apacheのリビジョンも上がっているので新規にインストールする。
Apache-2.12インストール
インストール先は/opt。
# cd /usr/local/src/ && \
mkdir /opt/httpd-2.2.12 && \
ln -s /opt/httpd-2.2.12 /opt/httpd && \
wget http://www.meisei-u.ac.jp/mirror/apache/httpd/httpd-2.2.12.tar.gz && \
tar zxvf httpd-2.2.12.tar.gz && \
cd httpd-2.2.12 && \
./configure –prefix=/opt/httpd –with-mpm=worker –enable-so –enable-cgi –enable-rewrite –enable-deflate –enable-expires –enable-proxy –enable-proxy-balancer –enable-cache –enable-disk-cache -enable-mem-cache && \
make && \
make install && \
echo $?
そしてhttpd.confに以下のmod_cacheとmod_mem_cacheとmod_disk_cache項目を追記する。
※LoadModuleはコンパイル時にモジュールを含んでいるため要らない。
CacheEnable mem /
MCacheSize 256000
MCacheMaxObjectCount 1000
# MCacheMinObjectCount 1
MCacheMaxObjectSize 256000
CacheRoot [ディスクキャッシュを保存するディレクトリ]
CacheEnable disk /
CacheDirLevels 5
CacheDirLength 3
これでokなので起動!
どれどれ変わったかな?
topページのレスポンスタイム
チューニング前→平均2sec
チューニング後→平均2sec
日時ページへの画面遷移レスポンスタイム
チューニング前→平均6sec
チューニング後→平均5sec
あまりかわっておらぬではないかっ!
そもそも各ページの画面生成に時間がかかっている気がする。
むーリソースは余ってるのにどこがボトルネックなのか不明だ。。。
と、思っていたら設定をミスしていたw
CacheEnableのパラメータを調整したら
日時ページへの画面遷移レスポンスタイム
チューニング前→平均6sec
チューニング後→平均2sec
おー!チューニングした効果があった!