次の問題があります。Redisでアクションの結果をキャッシュしたい。このため、https://github.com/jodosha/redis-rack-cacheを使用します。アクションがRack::Cacheによってキャッシュされる必要があるという事実は、Railsで適切なHTTPヘッダー情報を設定することによって決定されます。
response.headers['Cache-Control'] = 'max-age=3600, public, must-revalidate'
これで、Rack::CacheはRedisに応答を正しくキャッシュします。ただし、このヘッダーはブラウザに応答をキャッシュするように指示しますが、これは望ましくありません。リクエストはサーバー側で排他的にキャッシュする必要があります。
回避策として、リバースプロキシとして使用するnginxのヘッダーを置き換えていますが、より洗練された方法が必要です。誰かがそれを行う方法を知っていますか?
よろしく、マーティン