最近博客增長了許多新功能,訪問速度有所降低,在國內某搜索引擎上查找的時候看到了這篇文字,簡單明瞭,因此轉發過來,雖不是原創可是但願可以幫助更多的朋友。html
Django 官方緩存系統介紹:python
https://docs.djangoproject.com/en/1.8/to...數據庫
配置cache方式及內部實現機制:django
django中cache大致分爲三種,即針對全站的緩存配置、針對視圖的緩存配置、針對數據的緩存配置。本站採用數據庫+全站緩存。
1.設置緩存,在settings.py添加緩存
CACHES = { 'default': { 'BACKEND': 'django.core.cache.backends.db.DatabaseCache', 'LOCATION': 'my_cache_table', # 要緩存的表名 'TIMEOUT': 600, # 默認的緩存有效時間,以秒計. 默認值是 300 秒(五分鐘). 'OPTIONS': { 'MAX_ENTRIES': 1000 # 緩存的最大條目數(超出該數舊的緩存會被清除,默認值是 300). } } }
2.建立緩存表搜索引擎
python manage.py createcachetable
3.緩存整個站點code
設置了緩存類型以後, 最簡單使用緩存的方式就是緩存整個站點. htm
在MIDDLEWARE_CLASSES
設置中添加 django.middleware.cache.CacheMiddleware
, 就象下面的例子同樣:blog
MIDDLEWARE_CLASSES = ( 'django.middleware.cache.UpdateCacheMiddleware', # 注意位置,在前 'django.middleware.common.CommonMiddleware', 'django.middleware.cache.FetchFromCacheMiddleware', # 注意位置,在後 )
4.在settings.py添加CACHE_MIDDLEWARE_SECONDS :每一個頁面應該被緩存的秒數。索引
CACHE_MIDDLEWARE_SECONDS = 500 # 每一個頁面應該被緩存的秒數
5.重啓django,就能夠體驗緩存了。