問題タブ [cache-digests]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby-on-rails - ロシア人形のキャッシュ ダイジェスト パーシャルが泡立たない
キャッシュ ダイジェストを使用したロシアン ドール キャッシングに関する私の理解から、フラグメントをバージョン管理する必要がないようにするために、子フラグメントを更新すると、ダイジェスト キーがバブルアップして親の有効期限が切れるはずです。
これが正しければ、親キャッシュの有効期限が切れていない子のテンプレートを更新しているという問題があります。このシナリオでは、/schoolworks/need_grading/row.html.haml の html を変更していますが、/schoolworks/need_grading/row.html.haml のキャッシュが原因で変更が反映されません。
2 つの異なるページの Haml コードは次のとおりです。
rake cache_digests:nested_dependencies TEMPLATE=schoolworks/need_grading を実行したところ、返されました
ネストされた依存関係がレンダリングされたパーシャルと一致するようです。これで親キャッシュが期限切れにならない理由がわかりません。
ruby-on-rails - rails4 でキャッシュダイジェストを無効にする
Rails 3.2.13 から Rails 4.0.1 にアップグレードしています。未定義のメソッド「expired_fragment」を与えるキャッシングの問題に直面しています。
キャッシュダイジェストを無効にする方法はありますか?
これらの宝石も追加しました:
しかし、前回のようにキャッシングが機能していないようです。
ガイダンスはありますか、それとも他の誰かが同じ問題に直面していますか?
ruby-on-rails-3 - Rails の cache_digests と条件文
キャッシュ ダイジェストを使用して Rails でパーシャルをキャッシュする場合、パーシャルの条件付きロジックはどのように処理されますか? 完全なテンプレートをキャッシュし、後で条件を適用して、適切な json/html を適切なユーザーに提供できるようにしますか?
ruby-on-rails - RailsのロシアンドールキャッシングとN+1
Railsでのロシア人形のキャッシュについて私が理解していることから、RDC(ロシア人形のキャッシュ)を実行しているときに、関連するオブジェクトまたはオブジェクトリストを熱心にロードすることは有害です.RDCではデータベースからトップレベルのオブジェクトをロードし、そのキャッシュされたレンダリングされたテンプレートとサーブ。キャッシュが古くない場合、関連するオブジェクト リストを熱心にロードすると、役に立たなくなります。
私の理解は正しいですか?はいの場合、最初の呼び出しですべての関連オブジェクトを熱心にロードして、最初のロード中に N+1 クエリのコストを支払わないようにするにはどうすればよいですか (キャッシュがウォームでない場合)。
ruby-on-rails - Rails 4 でキャッシュ ダイジェストを無効にする
Rails 3 アプリを Rails 4 に移行中です。移行はほぼスムーズでしたが、大きな問題の 1 つは、キャッシュを期限切れにする古い Rails 3 コードが機能しないことです。次のようなログを取得しています。
これは、Rails 4 が新しいファンキーな種類のキャッシングであるキャッシュ ダイジェストを導入したためであることが判明しました。末尾の 16 進数の長い文字列は、Rails がこのキャッシュ フラグメントに関連付けたいビューの md5 ダイジェストです。
キャッシュダイジェストは必要ないと思います。私のアプリケーションはほとんど更新されず、通常は更新時にキャッシュをクリアできるため、ビュー コードの一部の以前の展開のバージョンを参照するキャッシュ フラグメントの概念は関係ありません。
フラグをcache
使用して任意の呼び出しを変更できることがわかりました。このブログ投稿では、多数の呼び出しを addに変更する方法について言及しています。しかし、このフラグをアプリケーション内のすべての呼び出しに適用したいと考えています。確かに、キャッシュダイジェストを普遍的に無効にする方法がいくつかあるに違いありませんか?:skip_digest => true
cache
:skip_digest
cache
ruby-on-rails - Rails 4はRedisのIPアドレスへのリンクをリダイレクトします
興味深い問題があります。Rails 4 と Redis でロシア人形のキャッシュ (cache_digests) を使用しています。しばらくすると、ページ上のほとんどのリンクが「domain/url」から「server_ip/url」に変わります。
Redisをフラッシュすると修正されます。
どうすればこの問題を解決できますか?