django 设置 数据库缓存

最近博客增加了许多新功能,访问速度有所下降,故启用了django的数据库全站缓存。

Django 官方缓存系统介绍:

https://docs.djangoproject.com/en/1.8/topics/cache/#database-caching

配置cache方式及内部实现机制:
    django中cache大体分为三种,即针对全站的缓存配置、针对视图的缓存配置、针对数据的缓存配置。本站采用数据库+全站缓存。

1.设置缓存,在settings.py添加

 
 
  1. CACHES = {
  2. 'default': {
  3. 'BACKEND': 'django.core.cache.backends.db.DatabaseCache',
  4. 'LOCATION': 'my_cache_table', # 要缓存的表名
  5. 'TIMEOUT': 600, # 默认的缓存有效时间,以秒计. 默认值是 300 秒(五分钟).
  6. 'OPTIONS': {
  7. 'MAX_ENTRIES': 1000 # 缓存的最大条目数(超出该数旧的缓存会被清除,默认值是 300).
  8. }
  9. }
  10. }


2.创建缓存表

 
 
  1. python manage.py createcachetable


3.缓存整个站点

设置了缓存类型之后, 最简单使用缓存的方式就是缓存整个站点. 

在``MIDDLEWARE_CLASSES`` 设置中添加 django.middleware.cache.CacheMiddleware , 就象下面的例子一样:

 
 
  1. MIDDLEWARE_CLASSES = (
  2. 'django.middleware.cache.UpdateCacheMiddleware', # 注意位置,在前
  3. 'django.middleware.common.CommonMiddleware',
  4. 'django.middleware.cache.FetchFromCacheMiddleware', # 注意位置,在后
  5. )


4.在settings.py添加CACHE_MIDDLEWARE_SECONDS :每个页面应该被缓存的秒数。

 
 
  1. CACHE_MIDDLEWARE_SECONDS = 500 # 每个页面应该被缓存的秒数


5.重启django,就可以体验缓存了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值