Подтвердить что ты не робот

Как проверить, работает ли мой 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 = ''
4b9b3361

Ответ 1

Не работал с Django, но мой подход по умолчанию для проверки того, действительно ли какой-либо компонент пишет redis во время разработки:

Во-первых, я очищаю все ключи, хранящиеся в redis, чтобы удалить старые записи кэша (никогда не делайте этого в процессе производства, поскольку это удаляет все данные из redis):

> redis-cli FLUSHALL

Затем активируйте кеширование в моем приложении и посмотрите, что делает redis:

> redis-cli MONITOR

Вы должны ввести интерактивный сеанс, в котором вы увидите каждую команду, отправленную redis.

Перезагрузите страницу и на своем терминале вы увидите некоторые операции SET *, в которых хранятся данные кэша.

Перезагрузитесь снова, и если ваш кеш работает, вы должны увидеть некоторые операции GET *, извлекающие кэшированные данные.

Примечание: с помощью этого метода вы можете проверить, действительно ли используется ваш кеш. То, что вы не видите, - это то, что ваш кеш помогает ускорить ваше приложение. Для этого вам нужно выполнить тесты производительности, как это предлагается в комментариях.

Ответ 2

Вы можете установить панель инструментов django-debug и посмотреть, уменьшается ли количество запросов при включении кеширования. Хотя я не думаю, что это лучшее решение поставленного вопроса, я все еще думаю, что вы хотите это сделать, поскольку вы можете легко определить дорогостоящие запросы с помощью этой настройки, а затем добавить к ним соответствующее кэширование.