Got some good answers over here in case anyone is interested:
http://stackoverflow.com/questions/1034910/best-way-to-combine-fragment-and-object-caching-for-memcached-and-rails

On Jun 23, 5:11 pm, Brian Armstrong <[email protected]> wrote:
> Lets say you have a fragment of the page which displays the most
> recent posts, and you expire it in 30 minutes.  Btw, I'm using rails
> here.
>
> <% cache("recent_posts", :expires_in => 30.minutes) do %>
>  ...
> <% end %>
>
> Obviously you don't need to do the database lookup to get the most
> recent posts if the fragment exists, so you should be able to avoid
> that overhead too.
>
> What I'm doing now is something like this which seems to work:
>
> unless Rails.cache.exist? "views/recent_posts"
>       @posts = Post.find(:all, :limit=>20, :order=>"updated_at DESC")
> end
>
> Is this the best way?  Is it safe?
>
> One thing I don't understand is why the key is "recent_posts" for the
> fragment and "views/recent_posts" when checking later, but I came up
> with this after watching memcached -vv to see what it was using.
> Also, I don't like the duplication of manually entering
> "recent_posts", it would be better to keep that in one place.

Reply via email to