一尘不染

如何测试我的Redis缓存是否正常工作?

redis

我已经安装了django-redis-cache和redis-
py。我关注了Django的缓存文档。据我所知,下面的设置是我所需要的。但是我怎么知道它是否正常工作呢?

settings.py

    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 = ''

阅读 1472

收藏
2020-06-20

共1个答案

一尘不染

尚未与Django一起使用,但是我的默认方法是在开发过程中检查某个组件是否确实写入了Redis:

首先,我刷新存储在redis中的所有键,以删除旧的缓存条目(在生产中绝对不要这样做,因为这会从redis中删除所有数据):

> redis-cli FLUSHALL

然后在我的应用程序中激活缓存,然后查看redis的作用:

> redis-cli MONITOR

您应该进入一个交互式会话,在该会话中您会看到发送到redis的每个命令。

重新加载页面,在终端上,您应该会看到一些SET *操作来存储缓存数据。

再次重新加载,如果您的缓存可用,您应该会看到一些GET *操作来检索缓存的数据。

注意:使用这种方法,您可以检查缓存是否实际使用。您看不到的是缓存是否有助于加快应用程序速度。为此,您必须按照注释中的建议进行性能测试。

2020-06-20