Stats - hits and misses¶
In Getting fancy we went through various ways of using
django-fancy-cache that all have a functional difference.
What you can do is enable stats so you can get an insight into what
django-fancy-cache does for you.
The first step is to switch on a setting. Put this in your
FANCY_REMEMBER_ALL_URLS = True FANCY_REMEMBER_STATS_ALL_URLS = True
The other thing you need to do is to add
INSTALLED_APPS like this:
INSTALLED_APPS += ('fancy_cache',)
The first one is to tell
django-fancy-cache to remember every URL
it caches and the second one is to keep track of how many hits and
misses you have per URL.
This will enable stats collections on all uses of the
decorator. Alternatively you can do it explicitely on just one view.
from django.shortcuts import render from fancy_cache import cache_page @cache_page(3600, remember_all_urls=True, remember_stats_all_urls=True) def my_view(request): something_really_slow... return render(request, 'template.html')
Now, run your view a couple of times and then you can use the management command to get an output of this:
$ ./manage.py fancy-urls /page5.html HITS 62 MISSES 5 /page4.html HITS 4 MISSES 1
Another way add
django-fancy-cache to your root urls.py like this:
urlpatterns = patterns( '', ...your other stuff..., url(r'fancy-cache', include('fancy_cache.urls')), )
Now you can visit
http://localhost:8000/fancy-cache. It’ll give
you a very basic table with all cache keys, their hits and misses.