资讯专栏INFORMATION COLUMN

(转)django 设置 数据库缓存

Flands / 2544人阅读

摘要:官方缓存系统介绍配置方式及内部实现机制中大体分为三种,即针对全站的缓存配置针对视图的缓存配置针对数据的缓存配置。本站采用数据库全站缓存。每个页面应该被缓存的秒数重启就可以体验缓存了。

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

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

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/37872.html

相关文章

  • django官方文档1.11编翻:首页

    摘要:源网页说明文档所有关于你应该且必须知道的。性能和优化概述的兼容性旨在兼容多种不同版本的支持的兼容性地理框架打算成为世界级的地理框架。其目标是尽可能简单地构建应用程序并利用空间使能数据的功能。 源网页:https://docs.djangoproject.co... django说明文档 所有关于django你应该且必须知道的。 第一步 你是否django编程新手,那就从此开始!从零开始...

    Michael_Lin 评论0 收藏0
  • 8-django——发送邮件和缓存

    摘要:缓存数据就是为了保存那些需要很多计算资源的结果,这样的话就不必在下次重复消耗计算资源。自带了一个健壮的缓存系统来保存动态页面,避免每次请求都重新计算。默认不会关闭连接尽可能重用连接。 发送邮件 概述:Django中内置了邮件发送功能,发送邮件需要使用SMTP服务,常用的免费服务器有:163、126、QQ 注册并登陆163邮箱 打开POP3/SMTP服务与IMAP/SMTP服务 重置授...

    sumory 评论0 收藏0
  • Django-缓存

    摘要:自带了一个健壮的缓存系统来保存动态页面,避免每次请求都重新计算。缓存中的和方法是很常见的。尽量放在第一个继承的类设置过期时间根据自己需求加缓存。目前这个缓存使用的是内存。 概述:对于中等流量的网站来说,尽可能的减少开销是非常必要的。缓存数据就是为了保存那些需要很多计算资源的结果,这样的话就不必在下次重复消耗计算资源。获取数据的数据的时候就是去缓存中拿,拿到了直接返回,没拿到就去数据库中...

    aervon 评论0 收藏0
  • Django-缓存

    摘要:自带了一个健壮的缓存系统来保存动态页面,避免每次请求都重新计算。缓存中的和方法是很常见的。尽量放在第一个继承的类设置过期时间根据自己需求加缓存。目前这个缓存使用的是内存。 概述:对于中等流量的网站来说,尽可能的减少开销是非常必要的。缓存数据就是为了保存那些需要很多计算资源的结果,这样的话就不必在下次重复消耗计算资源。获取数据的数据的时候就是去缓存中拿,拿到了直接返回,没拿到就去数据库中...

    evin2016 评论0 收藏0
  • 个人博客四|注册登录退出功能后台开发

    摘要:声明本博客的注册登录退出功能将使用,参考资源如下文档教程安装配置信息安装后设置,将相关加入到里去。指定与特定配置文件相关联的对象之数据库的。因此并没有提供用户详情应用用户详情请参考个人博客五用户个人资料扩展 声明:本博客的注册登录退出功能将使用django-allauth,参考资源如下:django-allauth文档django-allauth教程 1、安装django-allau...

    Darkgel 评论0 收藏0

发表评论

0条评论

Flands

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<