フルページキャッシュを5分毎にリセットするとストップザ・ワールド?状態になる。
GCP上で複数台サーバ運用している状態なのですが、キャッシュを5分おきにクリアする設定にすると、1時間に1度くらい、応答を返さなくなるような挙動をします。
キャッシュクリアを手動のみにすると収まりますので、事象としてはこれが原因で間違い無いようです。
数台のサーバ全てで同時に発生してしまい、これだとStopTheWorldのような状態になってしまうということなのですが、これはこのような仕様でしょうか?
個別に更新したページのみキャッシュクリアして行くような運用が必要でしょうか?
その場合、時刻指定での公開機能(権限設定にて実現)が結局使えない(手動でキャッシュクリアが必要)、というような形になってしまい、なんだかなぁという感じです。
なにか事例とか、そういうもんだよとか、こうすれば回避出来るとかありましたら教えてくださいませ。
以下、環境情報です。
# concrete5 Version
5.6.3.3
# concrete5 Packages
Bootswatch (0.9.1), Open Graph Tags Lite (1.5), SuperMint Theme (2.0.7.2).
# concrete5 Overrides
blocks/page_list, languages/he_IL, languages/fa_IR, languages/nl_NL, languages/it_IT, languages/zh_TW, languages/vi_VN, languages/es_MX, languages/es_PE, languages/ar, languages/pt_PT, languages/de_DE, languages/cs_CZ, languages/el_GR, languages/nb_NO, languages/zh_CN, languages/ro_RO, languages/sv_SE, languages/es_AR, languages/da_DK, languages/es_ES, languages/sk_SK, languages/fi_FI, languages/ru_RU, languages/sl_SI, languages/tr_TR, languages/fr_FR, languages/ja_JP, models/page_update.php, themes/super_mint
# concrete5 Cache Settings
Block Cache - On
Overrides Cache - On
Full Page Caching - On - If blocks on the particular page allow it.
Full Page Cache Lifetime - Only when manually removed or the cache is cleared.
# Server Software
Apache
# Server API
apache2handler
# PHP Version
5.3.3
# PHP Extensions
apache2handler, apc, bz2, calendar, Core, ctype, curl, date, ereg, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, json, libxml, mbstring, mysql, mysqli, openssl, pcre, PDO, pdo_mysql, pdo_sqlite, Phar, Reflection, session, shmop, SimpleXML, sockets, SPL, sqlite3, standard, tokenizer, xml, zip, zlib.
# PHP Settings
max_execution_time - 30
apc.max_file_size - 1M
log_errors_max_len - 1024
max_file_uploads - 20
max_input_nesting_level - 64
max_input_time - 60
max_input_vars - 1000
memory_limit - 128M
post_max_size - 8M
safe_mode - Off
safe_mode_exec_dir - no value
safe_mode_gid - Off
safe_mode_include_dir - no value
sql.safe_mode - Off
upload_max_filesize - 2M
mysql.max_links - Unlimited
mysql.max_persistent - Unlimited
mysqli.max_links - Unlimited
mysqli.max_persistent - Unlimited
pcre.backtrack_limit - 100000
pcre.recursion_limit - 100000
session.cache_limiter - nocache
session.gc_maxlifetime - 7200
safe_mode_allowed_env_vars - PHP_
safe_mode_protected_env_vars - LD_LIBRARY_PATH
Re: フルページキャッシュを5分毎にリセットするとストップザ・ワールド?状態になる。
時刻指定で記事を有効化した場合に、トップページがフルページキャッシュされてるとトップに新しい記事が表示されないのです。なので、定期的にクリアするような設定にしました。
今試してますが、トップページだけでもキャッシュクリアするとそのタイミングで全てのサーバがエラーを返すような状態になりました。。。
時刻指定でトップページのみキャッシュクリアが出来れば問題無いです。
もしくは、手作業でサーバ側のキャッシュをクリアするようなことが可能でしょうか?
そうすればcronとかで仕込むことが出来るのですが。。
トップページのみのキャッシュ生成で停止に見舞われるような速度になること自体もおかしいような気もしますが、サーバは3,4台立ち上がっている状態なので、一台づつクリア出来ればある程度解消されると思うのですが。。
Re: フルページキャッシュを5分毎にリセットするとストップザ・ワールド?状態になる。
Re: Re: フルページキャッシュを5分毎にリセットするとストップザ・ワールド?状態になる。
再現性があるのですが、Concrete5でこんな事例ありますか?
そもそもcacheフォルダの削除はNGなのでしょうか?
もし分かれば教えてください。以下、ログです。
[ayatoshi@toushin-web-group-2-ozmi cache]$ sudo rm -fr ./*
rm: cannot remove `./pages': Directory not empty
[ayatoshi@toushin-web-group-2-ozmi cache]$ ls
pages
zend_cache---13aa4280b57cbbfb5f9066018aeb1340Zend_Translate_e058e179eb30c9
26773e7d39e399324d_Gettext
zend_cache---13aa4280b57cbbfb5f9066018aeb1340Zend_Translate_efe10223486e77
1632dec4e15c9db29f_Gettext
zend_cache---13aa4280b57cbbfb5f9066018aeb1340Zend_Translate_Gettext_Option
s
zend_cache---internal-metadatas---13aa4280b57cbbfb5f9066018aeb1340Zend_Tra
nslate_e058e179eb30c926773e7d39e399324d_Gettext
zend_cache---internal-metadatas---13aa4280b57cbbfb5f9066018aeb1340Zend_Tra
nslate_efe10223486e771632dec4e15c9db29f_Gettext
zend_cache---internal-metadatas---13aa4280b57cbbfb5f9066018aeb1340Zend_Tra
nslate_Gettext_Options
[ayatoshi@toushin-web-group-2-ozmi cache]$
Broadcast message from root@toushin-web-group-2-ozmi
(unknown) at 18:10 ...
The system is going down for halt NOW!
takuro hishikawa
Re: フルページキャッシュを5分毎にリセットするとストップザ・ワールド?状態になる。