質問

JSON出力を返すコントローラーインデックスアクションがあります。

render :json => my_array.to_json

ここで使用する必要があるキャッシュの種類。これについては「ページキャッシュ」は理にかなっていますか。

または、以下のようにアクションキャッシュを行う必要がありますか

caches_action :index
役に立ちましたか?

解決

アクションキャッシュまたはページキャッシュのいずれかが正常に機能します。ページキャッシングは、レールスタックを呼び出すことは決してないという利点がありますが、そのJSONフィードに誰がアクセスするかを制御する必要があるかどうかによって異なります。

あなたがそれを逃れることができるなら、私はページキャッシングを使用することの大ファンです - システムリソースには大きな節約があります。 :)


編集:ページキャッシングの例、混乱があった場合に備えて:

class SomeController < ApplicationController
  caches_page :index
  def index
    render :json => my_array.to_json
  end
end

私が何かを誤解していない限り、それはあなたがする必要があるすべてであるべきです。

他のヒント

他の出力と同じ考慮事項がJSONに適用されるはずです。ユーザーのデータへのアクセスを検証する必要がある場合は、アクションキャッシングが進む方法です。そうしないと、ページキャッシュは問題ありません。

アプリのロジックによりデータが変更された場合、両方のフォームのキャッシュに問題があり、他の何かを使用する方が良いでしょう。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top