私はヘロクのRails 3アプリで:expires_inオプションを使用してアクションキャッシュを使用しています。私はexpire_actionを更新時にコントローラで直接呼び出すことを試みました。何もキャッシュエントリを正しく期限切れにしていないようです。ヘロクでMemcachedエントリを期限切れにするには
expire_action :action => :embed, :format => :js
そして、私はまた、正確なキーを取得するには、URLジェネレータを使用しようとすると、スイーパーでそれをしようとしました:私のアクションで
caches_action :embed, :if => Proc.new { |c| c.request.format.js? || c.request.format.rss? }, :expires_in => 5.minutes
:私のコントローラで
expire_action obj_embed_url(@obj.unique_token)
有効期限切れではないワニスキャッシュ層を使用しているのはHerokuですか? (キャッシュは5分後にはっきりと期限切れになるので、コンテンツの更新が見えるので)。私はmemcachedアドオンが正しく設定されているようです(Dalli gem; config.cache_store =:dalli_storeを使用しています)。適切な環境変数...
$ heroku config |grep MEM
MEMCACHE_PASSWORD => xxxxxxxxxxxxxxxxx
MEMCACHE_SERVERS => xxx.xxx.northscale.net
MEMCACHE_USERNAME => appxxxxxx%40heroku.com
私はここで何が欠けていますか?
ワニスのCache-Controlヘッダが設定されているだろう唯一のキャッシュファイルが。 Cedarで実行している場合は、これがファイルシステムにキャッシュされていないことを確認してください。 (再展開すると、新しいdynoが作成され、テストとしてクリアされます) –
このアプリケーションはbamboo-ree-1.8.7上にあります。はい、私はワニスを避けたかったのは、memcached(メモリ内)を使用してキャッシュコントロールの長さよりも早く期限切れにできないためです。 – sands