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を設定しておけば良いし
サイトのページ数(ボリューム)とキャッシュの有効期限を調整してみるのもいいかもしれませんね。
関連記事
サーバーリソースを浪費するbotアクセスを遮断すればサイト表示が早くなる

ブログやCSMなどサイト運営を長くしていると、ページ数が増えサイトのボリュームがアップします。 そして、検索エンジンから各ページへのアクセスが徐々に増え、アクセス数の推移を見るのが楽しくなりますよね。 が、アクセスが増え […]
nginx worker_processesとworker_cpu_affinityの設定値・方法

数年前からnginxの話題でWEBシステム開発が盛り上がっていました。 そして、社内でもnginxを利用した開発をしているスタッフが多い中 未だにapacheでのWEBサーバー構築しか経験が無い自分としては このタイミン […]
MAC OSのディスプレイ解像度を上げて画面を広く使う quickres Display Menu

サブのパソコンをWindows OSのパソコンから、MAC OSのパソコンへ変えてしばらくたちます。 設定方法、MAC OSアプリなどいろいろ利用してみて、Windowsより便利でいいかもしれないと最近になって感じていま […]
windows10 不明なコマンドラインエラー/DynamicUpdateが修正できない

いやはや年末で仕事おさめという中、最後の最後でパソコントラブルがなおらないとは・・・ Windows10恐るべし! 新しいパソコンを用意してWindows10を直接クリーンインストールできたのに ライセンス認証ができない […]
windows10でアップデート時に不明なコマンドライン…/DynamicUpdateエラー

前回、ベアボーンPCでWindows 10利用時にUSB3に不具合がでていて いろいろ試した結果、他のパソコンを使うことにしました。 で、早速OSをインストール! MicrosoftからWindows10のISOファイル […]
WordPress 無限ループのリダイレクトエラー・不具合を解決する方法

前までは普通に使えていたWordpressがある時から、無限ループでリダイレクトエラーになってしまう。 (サーバーを変更したのが原因?) 管理画面にログインした状態だとリダイレクトエラーになっていました。 ログインしてい […]