WEBサーバーnginxのキャッシュで失敗した設定 proxy_cache fastcgi_temp
みなさん、こんにちは武智建樹です。
最近、暇があればnginxをポチポチ触っていろいろな設定を自分の目で見て楽しんでいます。
さて、今回はnginxのキャッシュに挑戦してみました。
wordpressの高速化!キャッシュについてのアレコレを参考に
バックグラウンドにapacheを使用したproxy_cacheや、php-fpmを使用したfastcgi_tempを
試してみました。
今までキャッシュファイルを作成するキャッシュ方法はあまり好きではありませんでした。
(ディスクアクセスによる遅延が発生しそうなので・・・)
ので、ついでにHDD・SSD?より高速なメモリディスクを利用したキャッシュ設定を試してみました。
最近のLinux OSでは、標準でメモリディスクが設定されているのかな?
tmpfs /dev/shm
デフォルトの/dev/shmをそのままnginxのキャッシュ置場として設定してもいいのですが
nginxのキャッシュを一瞬で削除したりしたいので、他のシステムのファイルが混合しないように
nginx専用のtmpfsを新しく作成しました。
/etc/fstab
------------------------------
↓ 追加
tmpfs /var/cache/nginx tmpfs defaults,noatime,mode=1777,size=256m 0 0
------------------------------
特に難しい設定もなくproxy_cacheやfastcgi_tempフォルダに、各キャッシュファイルがどんどん作成されていきます。
ブラウザーで確認してみると、数100倍くらいレスポンスが良くなっているのを確認できます。
しばらく様子を見ていると、ページが真っ白になって何も表示されない不具合に遭遇。あれ?
エラーファイルを確認すると、キャッシュが作成できないエラーが大量発生中・・・
なるほど!ディスクの空き容量がなくなると、古いファイルから自動で削除されるものだと
思っていました。(都合良すぎです。nginxに関係ないですもんね)
sizeを%で設定した方が良いのかな?
大容量のメモリーを搭載しているサーバーなら数GBを設定しておけば良いし
サイトのページ数(ボリューム)とキャッシュの有効期限を調整してみるのもいいかもしれませんね。
関連記事
開発者におすすめのフォント「Ricty」をWindows、MACでインストールする
開発という実務から遠ざかっていたので、2014年!今年は改めてシステム開発を初歩から学んでいこうと思っています。 開発現場の開発ツールを自分なりにいろいろ触れて挑戦していきます! 今回は、開発環境におすすめと話題のフォン […]
簡単にapacheからnginxへ移行するツール htaccess to nginx converter
最近、個人的にWEBサーバーのnginxに挑戦中です。 3、4年前あたりから軽量なWEBサーバーnginxが話題になっていて、ついに先日やっとnginxへ挑戦した次第です。 周りの話題についていけないので・・・やっぱり自 […]
WordPressが連日のように更新 セキュリティー対策を兼ねてバージョンアップ
常日頃から個人的なサイトをwordpressで構築して楽しんでいます。 最近ではOpenSSLのHeartBeatによるセキュリティーが問題となったり DNSキャッシュポイズニング攻撃が話題になったりと、これらの攻撃で簡 […]
Google ChromeとjQuery1.10.2でevent.returnValueエラーがでる wordpress
あれ?前までは表示されていなかった下記のようなエラーが Chromeのコンソール画面に出力されるようになっていた。 event.returnValue is deprecated. Please use the stan […]
Nginx fastcgi_cacheのキャッシュを利用時に空のページが表示されるエラー
NginxでfastcgiをキャッシュしWordpressやその他のシステムを高速化していました。 サーバー負荷も抑えられ、ページも高速に表示され満足していたのですが 時々ページが空(真っ白)で表示されることがありました […]
Google Chromeブラウザーで Facebookが表示できない!読み込みが終わらない
ある時から Google Chromeブラウザーで、Facebookのサイト(自分のタイムライン)にアクセスすると 永遠に読み込みが終わらない・・・エラーがでて、FacebookはIEなど他のブラウザーを利用するようにな […]