我已经安装了django-redis-cache和redis- py。我关注了Django的缓存文档。据我所知,下面的设置是我所需要的。但是我怎么知道它是否正常工作呢?
CACHES = { 'default': { 'BACKEND': 'redis_cache.RedisCache', 'LOCATION': '<host>:<port>', 'OPTIONS': { 'DB': mydb, 'PASSWORD': 'mydbspasswd', 'PARSER_CLASS': 'redis.connection.HiredisParser' }, }, }
…
MIDDLEWARE_CLASSES = ( 'django.middleware.cache.UpdateCacheMiddleware', ...[the rest of my middleware]... 'django.middleware.cache.FetchFromCacheMiddleware', ) CACHE_MIDDLEWARE_ALIAS = 'default' CACHE_MIDDLEWARE_SECONDS = (60 * 60) CACHE_MIDDLEWARE_KEY_PREFIX = ''
尚未与Django一起使用,但是我的默认方法是在开发过程中检查某个组件是否确实写入了Redis:
首先,我刷新存储在redis中的所有键,以删除旧的缓存条目(在生产中绝对不要这样做,因为这会从redis中删除所有数据):
> redis-cli FLUSHALL
然后在我的应用程序中激活缓存,然后查看redis的作用:
> redis-cli MONITOR
您应该进入一个交互式会话,在该会话中您会看到发送到redis的每个命令。
重新加载页面,在终端上,您应该会看到一些SET *操作来存储缓存数据。
再次重新加载,如果您的缓存可用,您应该会看到一些GET *操作来检索缓存的数据。
注意:使用这种方法,您可以检查缓存是否实际使用。您看不到的是缓存是否有助于加快应用程序速度。为此,您必须按照注释中的建议进行性能测试。