Cache и Paginate RSS Feed в Rails

Я работаю над приложением типа потоковой передачи в Rails и постоянно анализирую несколько различных RSS-каналов с помощью Feedzirra. Чтобы поддержать масштабирование приложения, мне нужно реализовать какое-то кэширование, а также разрешить разбивать кэшированные результаты в представлении. Срок действия кэша может истечь всего один раз в день.

Будучи новичком в области кэширования в Rails, какие типы кэширования будут рекомендованы для этого? Кроме того, я выполняю большинство операций разбора каналов в модулях в моей директории lib/, но не уверен, что это повлияет / не подойдет для кэширования. В идеале я хотел бы кэшировать массив результатов, которые возвращает RSS-канал, и выполнить некоторую постобработку, прежде чем отправить его в представление.

Любая помощь приветствуется!

1 ответ

Решение

Я предлагаю вам использовать гем для запуска задачи расписания в cron, собирать все желаемые результаты из всех ваших RSS-каналов и сохранять их в XML или даже в таблице.

В следующий раз загрузите результаты из этого xml или таблицы и создайте статические кэшированные страницы (html файлы).

И каждый раз, когда вы запускаете задачу расписания, стирайте свои предыдущие сохраненные файлы, чтобы старые результаты не отображались.

Другие вопросы по тегам