0

私の Rails アプリケーションには、データベースから 200 個までの項目を取得する、よく呼び出されるメソッドがあります。これを何度も行うのではなく、 を使用して結果を保存しますRails.cache.write。ただし、 を使用して結果を取得すると、Rails.cache.readまだ非常に遅く、約 400 ミリ秒です。これをスピードアップする方法はありますか?

これはコントローラーのアクションで発生しているため、ユーザーがページをロードするのにそれほど長く待たなくて済むようにしたいと考えています。

4

1 に答える 1

0

RailsガイドのRailsキャッシングに関する参考情報として、「...クエリキャッシュはアクションの開始時に作成され、そのアクションの終了時に破棄されるため、アクションの期間中のみ保持されることに注意することが重要です。」

方法を教えていただけると、より迅速に対応できるかもしれません。それ以外の場合は、いくつかのパフォーマンスのベスト プラクティス:

  • .includesN+1 クエリを回避するために使用します。これをモデルで定義し、コントローラーで呼び出します。
  • インデックスはどのように設定されていますか (ある場合)?
于 2012-11-29T06:10:29.433 に答える