为什么不记录Django Memcached活动?

时间:2019-07-29 18:20:35

标签: django memcached

我正在尝试将Memcached用作Django项目的主要缓存。但是,当我在缓存中输入一些数据以确保其正常工作时,日志文件中没有任何内容记录。

这是我的Django设置:

# settings.py
CACHES = {
    'default': {
        'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',
        'LOCATION': '127.0.0.1:11211',
    }
}
CACHE_MIDDLEWARE_ALIAS = 'default'
CACHE_MIDDLEWARE_SECONDS = 300
CACHE_MIDDLEWARE_KEY_PREFIX = ''

MIDDLEWARE_CLASSES = (
    'django.middleware.cache.UpdateCacheMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
    'django.middleware.security.SecurityMiddleware',
    'django.middleware.cache.FetchFromCacheMiddleware',
)

这是我的Memcached配置:

# /etc/memcached.conf
-d
logfile /var/log/memcached.log
-vv
-m 64
-p 11211
-u memcache
-l 127.0.0.1

我创建了日志文件/var/log/memcached.log,并将其赋予所有者“ memcache”,组“ adm”和权限0644。

我已经确认memcached正在运行并且正在侦听其端口:

$ netstat -tupan | grep 11211
tcp        0      0 127.0.0.1:11211         0.0.0.0:*               LISTEN      20655/memcached
tcp        0      0 127.0.0.1:11211         127.0.0.1:53822         ESTABLISHED 20655/memcached
tcp        0      0 127.0.0.1:53822         127.0.0.1:11211         ESTABLISHED 22403/python

要使用Django测试Memcached,我运行了以下命令:

python manage.py shell
from django.core.cache import cache
cache.set('my_key', 'hello world!', 30)
cache.get('my_key')         # Returns 'hello world!'

但是,运行此命令后,memcached日志文件应包含我刚刚运行的get和set时仍然为空。

我想念什么?

环境: 作业系统:Debian 9.9
Django:1.11.21
记忆快取:1.4.33

0 个答案:

没有答案