(转)django 设置 数据库缓存

最近博客增加了许多新功能,访问速度有所下降,在国内某搜索引擎上查找的时候看到了这篇文字,简单明了,所以转发过来,虽不是原创但是希望能够帮助更多的朋友。

Django 官方缓存系统介绍:

https://docs.djangoproject.com/en/1.8/to...

配置cache方式及内部实现机制:

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.缓存整个站点

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

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

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,就可以体验缓存了。

转自:http://www.opdev.cn/blog/article/73.html


笨鸟先飞
笨鸟先飞
300 声望
7 粉丝
0 条评论
推荐阅读
django中 实现向带有外键(一对多和多对多)数据库中批量插入数据
models模型中有文章主表DetailInfo、文章分类表Types、文章资源表ResourcesLink,有一对多和多对多的关系。1、models.py: {代码...} 2、json数据格式 {代码...} 3.实现批量插入数据 {代码...}

xiaomayi2012阅读 2.3k

基于Sanic的微服务基础架构
使用python做web开发面临的一个最大的问题就是性能,在解决C10K问题上显的有点吃力。有些异步框架Tornado、Twisted、Gevent 等就是为了解决性能问题。这些框架在性能上有些提升,但是也出现了各种古怪的问题难以...

jysong6阅读 3.9k评论 3

滚蛋吧,正则表达式!
你是不是也有这样的操作,比如你需要使用「电子邮箱正则表达式」,首先想到的就是直接百度上搜索一个,然后采用 CV 大法神奇地接入到你的代码中?

良许4阅读 2.2k

又一款眼前一亮的Linux终端工具!
今天给大家介绍一款最近发现的功能十分强大,颜值非常高的一款终端工具。这个神器我是在其他公众号文章上看到的,但他们都没把它的强大之处介绍明白,所以我自己体验一波后,再向大家分享自己的体验。

良许5阅读 1.8k

FastAPI性能碾压Flask?
不止一次的听过,FastAPI性能碾压Flask,直追Golang,不过一直没有测试过,今天闲着没事测试一下看看结果。不知道是哪里出了问题,结果大跌眼镜。

二毛erma02阅读 10.1k评论 3

封面图
Python之如何优雅的重试
为了避免偶尔的网络连接失败,需要加上重试机制,那么最简单的形式就是在对应的代码片段加一个循环,循环体里使用异常捕获,连接成功时退出循环,否则就重复执行相关逻辑,此时修改之后的函数f如下

Harpsichord12073阅读 7.3k

Linux终端居然也可以做文件浏览器?
大家好,我是良许。在抖音上做直播已经整整 5 个月了,我很自豪我一路坚持到了现在【笑脸】最近我在做直播的时候,也开始学习鱼皮大佬,直播写代码。当然我不懂 Java 后端,因此就写写自己擅长的 Shell 脚本。但...

良许1阅读 2.1k

300 声望
7 粉丝
宣传栏