0
我想了解Django缓存框架是如何工作的。我在settings.py
中设置了memcached,但加载页面的时间并没有缩短,Django-debug-toolbar显示了0个缓存调用。Django不使用memcached框架
这是我在settings.py已经设置:
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',
'LOCATION': '127.0.0.1:11211',
}
}
CACHE_BACKEND = 'memcached://127.0.0.1:11211/'
CACHE_MIDDLEWARE_ALIAS = "default"
CACHE_MIDDLEWARE_SECONDS = 60
MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'querycount.middleware.QueryCountMiddleware',
'corsheaders.middleware.CorsMiddleware',
'django.middleware.cache.UpdateCacheMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.cache.FetchFromCacheMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
'debug_toolbar.middleware.DebugToolbarMiddleware',
]
现在我刷新两次的页面对象的表。我认为第二次应该没有数据库查找,因为没有任何改变。
我缺少什么?
那么,你已经设置了缓存后端(两次,出于某种原因,但第二个设置不再使用),但你实际上缓存什么?如果是这样的话? –
我认为它会缓存任何数据库查找和其他昂贵的操作。根据标题在本教程中缓存整个站点:https://www.tutorialspoint.com/django/django_caching.htm是不是可以让django自动缓存? –
我在一个视图上设置了@cache_control(must_revalidate = True,max_age = 3600),它没有缓存任何东西。 –