Прежде всего, позвольте мне сказать, что я очень новичок в рельсах, работаю с ним всего пару дней.Какая стратегия кэширования лучше всего подходит для этой проблемы?
Мое первое приложение немного отличается от традиционного: на одном из моих классов моделей у меня есть части данных, которые извлекаются из базы данных и другой части, которые получены путем выполнения запроса HTTP REST внешнему ресурсу.
Я реализовал ленивую загрузку для «внешнего» ресурса, но каждый раз, когда пользователь нажимает на страницу, которая нуждается в одном из полей, привязанных к этому ресурсу, я повторно выполняю HTTP-запрос, который, очевидно, не масштаб.
Вопрос в том, какая стратегия кэширования, по вашему мнению, стоит для этого сценария? Как я могу использовать кеш только для данных, которые ленивы загружаются через HTTP? Я хотел бы реализовать кеш, который может истекать как по времени (скажем, 5 минут), так и при выполнении пользователем действия, которое должно аннулировать текущий кеш.
Как я могу реализовать его и какой будет компромисс памяти для хранения этих кешей? Было бы целесообразно хранить эти данные на сеансе или на отдельной структуре на сервере? Должен ли я рассматривать одну из таких внешних систем кэширования, как GigaSpaces и т. Д.??
Заранее благодарим за любые советы, которые вы можете предложить по этой проблеме.