コンテンツへスキップ
- りかばり➡理科張り
- SQLぶん➡SQL分
- しょうさいしようしょ➡詳細使用書
- 知人がブログ用に運用中しているWordPress 4.3 のトップページが突然、画面真っ白になる障害に見舞われた。
- 本人には対応が難しいとのことで調査を引き受けた。症状としては次の4つ。
- パソコンのブラウザからこのブログのトップページをアクセスすると画面が真っ白になる。ここで試したブラウザは、Chrome, Firefox, IE の3つ。
- サイト配下のサブフォルダは正常に表示出来る。
- 不思議なことに Android の Opera mini、Firefox では現象は再現せず正常に表示できた。
- 更に不思議なことに、パソコンからのアクセスで現象が発生している場合でも、WordPress 管理画面へログオンしている時だけは現象が現れない。
- 本番運用の WordPress で障害が発生した場合、切り分けの手掛かりとしてエラー発生箇所を特定するため、次の3つの設定のいずれかを推奨されることが多い。
- wp-config.php の WP_DEBUG 変数の値を false から true へ変更する。
- .htaccess へ php_flag display_errors ディレクティブの引数を On へ変更する。
- siteconfig.php (なければ作成)へ ini_set( ‘display_errors’, ‘off’ ); というステートメントを追記する。
- 然しどれを設定してみても、現象再現時にエラーメッセージなどは出力されず、何が問題なのか糸口さえも見つからずすっかり手詰まりとなった。
- その後、「画面が真っ白」というキーワードを手掛かりに様々なブログを渡り歩いて得た情報を元にいろいろと試した実験の一つが功を奏した。
- このブログで使われていたいた WP Super Cache というプラグインの設定画面で「キャッシング停止」を選択した後、「キャッシュを削除」というボタンを押した。ここで「コンテンツ」タブに画面が遷移したので、「期限切れのキャッシュを削除」というボタンを押した。
- この結果、ブログで発生していた障害はすべて取り除かれ復旧した。
- つまりエラーなど発生していなかったのに、エラーのように見えるため解決に手間取る。
- キャッシュにまつわるトラブルは、経験だけが役に立つ、思考力さえ必要ない、摩訶不思議なものが多い。
- 遙か昔、WPではない他の何かで同じ目に遭い、障害対策で客先に三日三晩泊まり込んだことがあったことをにわかに想い出させてくれた一件だった。
- ローカルディスクの性能が良くない Linux マシン上で運用している FireFox の動作がとても重くて困っていました。
- ネット上を散々探しまわった末に「Speed Up Firefox by Moving Your Cache to RAM, No RAM Disk Required」という記事に巡りあう事ができました。
- ポイントは
browser.cache.disk.enable=false (既存のtrueを変更)
browser.cache.memory.capacity=-1(新規追加)
の2つと言えるでしょう。
- 上記に述べられていた改善方法を試したところ、劇的な効果が認められブラウジングがとても軽快になりました。
- 私の使っているシステムは、ディスクの貧弱さに比べて相対的にメモリの空き領域やCPUのパワーに恵まれていたのでこの記事に沿った処置が幸いうまく行きました。
- アドレスバーに「about:cache」と入力することで、FireFox が使用しているキャッシュの統計情報を得られることも初めて知りました。
- FireFox の性能改善方法というと、上記の記事とは全く正反対のアプローチ、すなわち FireFox が消費するメモリを節約することによりスワッピングの発生を抑えるような方法もありますので、システムの不足しているリソースの違いにより使い分ける必要 があります。
- <2017-10-22 追記>
browser.cache.disk.parent_directory という文字列のエントリを新規に追加して値を、RAM ディスク上の任意のフォルダ名(例えば /dev/shm/ff_cache/cache2 等)にすると browser.cache.disk.enable=false の変更をせずとも同様の効果が得られるようです。
How do you CHANGE the location (away from Drive C) where Firefox stores temporary files?