title: Rails Caching, continue storing expired value
body: <p>I have a long database query on one of our dashboard systems that I would like to cache as results do not need to be accurate in realtime but can give a "close enough" value from the cache.</p>
  
  <p>I would like to do this without the user ever having to wait. I was looking at using something like</p>
  
  <pre><code>Rails.cache.write('my_val', 'val', :expires_in =&gt; 60.minutes)
  </code></pre>
  
  <p>to store this value, but I don't believe it gives the exact functionality that I want.  I would like to call with </p>
  
  <pre><code> Rails.fetch('my_val') { create a background task to update my_val; return expired my_val}
  </code></pre>
  
  <p>It seems that my_val is removed from the cache when it expired though.  Is there any way to access this expired value or perhaps another built in mechanism that would enable this functionality?</p>
  
  <p>Thanks.</p>