2017-01-02 10 views
0

장고 캐싱 프레임 워크의 작동 방식을 찾으려고합니다. 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', 

] 

가 지금은 개체의 테이블을 두 번 페이지를 새로 고침. 나는 아무것도 변경하지 않았기 때문에 두 번째로 데이터베이스 조회가 없어야한다고 생각했다.

enter image description here

나는 무엇을 놓치고?

+0

글쎄, 캐시 백엔드 (두 번, 어떤 이유로 두 번째 설정은 더 이상 사용되지 않음)를 설정했지만 실제로 캐싱하고 있습니까? 그렇다면 어디에서? –

+0

나는 db lookups와 다른 값 비싼 액션을 캐시 할 것이라고 생각했다. 제목에 따르면이 튜토리얼의 전체 사이트 캐싱 : https://www.tutorialspoint.com/django/django_caching.htm 장고를 자동으로 캐싱 할 수 있습니까? –

+0

하나의보기에서 @cache_control (must_revalidate = True, max_age = 3600)을 설정했지만 아무 것도 캐시하지 않았습니다. –

답변