Вы можете посмотреть Кэширование в Rails 2.1 и затем прочитать документацию memcached (я полагаю, вы уже прочитали ее) в Heroku.
Также Touch and Cache - довольно интересный метод, позволяющий избежать написания Sweepers для удаления кэшированного содержимого, когда вам необходимо обновить кэшированные данные.Использование touch автоматически приводит к истечению срока хранения кэшированных данных без необходимости писать новый код.
Обратите внимание, что сегодня интеграция с Heroku memcached предполагает, что вы используете Rails> = 2.3.3
Основная идеяявляется то, что вы добавляете результат (ы) вашего трудоемкого метода в Rails.cache (который является интерфейсом, через который вы получаете доступ к вашему механизму кэширования).Когда вы выбираете этот результат (ы), механизм кэширования ищет, может ли он найти его или срок его действия еще не истек.
Если он его находит, он очень быстро его возвращает, поскольку он берет его из кэша..
Если он не находит его или срок его действия истек (вы устанавливаете это при вызове fetch), он запускает медленный метод, чтобы добавить его или обновить в кэше.
Наконец, очень полезно читать документацию по Rails независимо от того, используете ли вы memcached или встроенное кэширование Rails: Кэширование с помощью Rails: обзор .Среди прочего, он говорит о:
- Кэширование страниц
- Кэширование действий
- Кэширование фрагментов
- Sweepers
- Кэширование SQL
- и более ...