Move more expensive cache check to async task

This task is performed at most once a day per flow (it's only the quick redis check that happens on each request). It also spreads out that daily timer with a randomization factor. We want these checks to happen if all they do is access the data from the api. I don't think just waiting until the click the read page is enough.