Quantcast
Channel: Active questions tagged redis+ruby-on-rails - Stack Overflow
Viewing all articles
Browse latest Browse all 873

How to perform a two level caching mechanism in rails?

$
0
0

I need to perform a two level caching mechanism on a food menu refresh application. I have to use Memcache and Redis for caching.

First need to check the menu is present in the memcache, if it is not or fail to fetch, need to move to redis caching and check the menu is present on not, if it not or fails due to some redis issue fetch the menu item from the DB.

pos_items = Rails.cache              .fetch("pos_menu_items_for_location_#{@location_id}", expires_in: 90.days) do              pos_items = RedisCache::PosMenu.fetch(location_id: @location_id) do                            pos_items = PosMenuReader.new(location_id: @location_id).call                            RedisCache::PosMenu.update(location_id: @location_id, menu: pos_items) unless pos_items == "working"                            if pos_items == "working"                               wait_for_worker_to_finish = true                            else %> <% Rails.logger.info("DEBUG::PosMenu::#{pos_menu_key} Fetched from db.") %><% pos_items %><% end                          end          end %>

Viewing all articles
Browse latest Browse all 873

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>