位置: 编程技术 - 正文

django开发教程之利用缓存文件进行页面缓存的方法(django web开发)

编辑:rootadmin

推荐整理分享django开发教程之利用缓存文件进行页面缓存的方法(django web开发),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:django开发案例,django使用教程,django使用教程,django项目开发实战,django最新教程,django最新教程,django开发手册,django开发从入门到实战pdf,内容如对您有帮助,希望把文章链接给更多的朋友!

前言

由于Django是动态网站,所有每次请求均会去数据进行相应的操作,当程序访问量大时,耗时必然会更加明显,最简单解决方式是使用:缓存,缓存将一个某个views的返回值保存至内存或者Redis中,5分钟内再有人来访问时,则不再去执行view中的操作,而是直接从内存或者Redis中之前缓存的内容拿到,并返回。

首先我们先来了解下浏览器的缓存

浏览器缓存机制

Cache-control策略Cache-Control与Expires的作用一致,都是指明当前资源的有效期,控制浏览器是否直接从浏览器缓存取数据还是重新发请求到服务器取数据。只不过Cache-Control的选择更多,设置更细致,如果同时设置的话,其优先级高于Expires。

还是上面那个请求,web服务器返回的Cache-Control头的值为max-age=,即5分钟(和上面的Expires时间一致,这个不是必须的)。

Last-Modified/If-Modified-SinceLast-Modified/If-Modified-Since要配合Cache-Control使用。lLast-Modified:标示这个响应资源的最后修改时间。web服务器在响应请求时,告诉浏览器资源的最后修改时间。lIf-Modified-Since:当资源过期时(使用Cache-Control标识的max-age),发现资源具有Last-Modified声明,则再次向web服务器请求时带上头If-Modified-Since,表示请求时间。web服务器收到请求后发现有头If-Modified-Since则与被请求资源的最后修改时间进行比对。若最后修改时间较新,说明资源又被改动过,则响应整片资源内容(写在响应消息包体内),HTTP ;若最后修改时间较旧,说明资源无新修改,则响应HTTP (无需包体,节省浏览),告知浏览器继续使用所保存的cache。

django开发教程之利用缓存文件进行页面缓存的方法(django web开发)

在实际中开发应用中,我们会用到缓存,其实在django开发中我们也能用到缓存,现在django给我们很多缓存方式,我看到的有六种之多吧,可能其余的还有,不在追叙,我采用的是利用文件的缓存,说白了就是把缓存的数据放到请求的电脑中,这样也是减少一部分的服务器的压力,那么来看看我的配置。

这是我们利用缓存文件的缓存,那么我们配置好了,来看下我们的使用,首先我们可以全局缓存

使用中间件,经过一系列的认证等操作,如果内容在缓存中存在,则使用FetchFromCacheMiddleware获取内容并返回给用户,当返回给用户之前,判断缓存中是否已经存在,如果不存在则UpdateCacheMiddleware会将缓存保存至缓存,从而实现全站缓存

设置如下:

还有就是我们对单独的视图进行缓存:

方法一:直接应用加入装饰器

其实我还用到另外的方式,那就是在url处增加,因为我的是面向对象的编程方式所以我利用下面的。

这样我们配置好,启动我们的项目,然后我们可以去看看我们的缓存是否生效,首先我们看下

可以看到,我在登陆界面做了两分钟的缓存,那么我们来看看我们的文件是否生效呢。

这样可以证明我们现在的缓存是成功的,其实我们还可以利用redis等来缓存。

总结

标签: django web开发

本文链接地址:https://www.jiuchutong.com/biancheng/372211.html 转载请保留说明!

上一篇:python使用邻接矩阵构造图代码示例(python 邻接表)

下一篇:浅谈Python处理PDF的方法(如何用python处理pdf)

  • 个体工商户所得税核定征收2023
  • 个人写的收据要留身份证复印件吗
  • 非货币性交换需要确认主营业务收入吗
  • 已扣缴税额
  • 品牌管理费是否交增值税
  • 建筑企业升资质主管单位
  • 水利申报怎么申报
  • 办理金税盘需要多少钱
  • 电商刷单手续费做什么费用?
  • 境外受控公司
  • 工商营业年报怎么做
  • 4s店贷款服务费是什么
  • 开办费计入长期待摊费用汇算清缴时怎么填写
  • 运输公司转包业务怎么开票
  • win10远程连接提示身份验证错误
  • 联想笔记本在bios中怎么把图标和字变大
  • 应收账款和预收账款有什么区别
  • mac环境搭建
  • linux配置ssh免密
  • windows7旗舰版好用吗?
  • 苹果mac双系统按住哪个键
  • 固定资产前期购买的后期入账怎么入?
  • 二手房过户提供发票好还是不提供
  • 员工食堂餐费可以税前扣除吗
  • linux中的大于号什么意思
  • 若依框架好用吗
  • session.php
  • 预提费用新会计准则叫什么科目
  • bulkload命令
  • 管理费用未分配利润
  • 存货盘盈盘亏的会计处理
  • 财政拨付注册资金怎么填
  • 公司帐户到银行怎么取钱
  • 限售股 缴税
  • 企业基本养老金退休后能领多少
  • 织梦的首页怎么换图片
  • 如何在sql server中已有数据库进行修改
  • 固定资产折旧的计算方法
  • 亏损企业研发费用必须加计扣除吗
  • 购货方收到红字发票计入进项税转出还是进项税额负数?
  • 固定资产停产需要计提折旧吗
  • 红字撤销需要带什么去税务局
  • 会计手工做账的目的
  • 港币转人民币差多少钱
  • 补交进项转出的税分录
  • 当月发生的费用下月支付
  • 从农民手中购买粮食税率
  • 成品油经销企业资质
  • 法人转移公司资产怎么办
  • 生产车间生产工人的薪酬计入什么
  • 会计忘记申报税款会有什么影响
  • 财务报表是否合法公允
  • MySQL 5.7双主同步部分表的实现过程详解
  • 关闭默认共享的影响
  • windows vista pe
  • windows8怎么设置
  • ubuntu15.04系统怎么使用卸载命令卸载软件?
  • macos安装pip
  • centos7配置vncserver
  • win7怎么打开程序
  • win7系统误删文件可以恢复吗
  • awk命令详解
  • 安卓接入点
  • linux shell执行命令
  • perl sub
  • Unity3D游戏开发基础
  • python中matplotlib绘制曲线
  • unity3d网络游戏开发
  • linux tomcat命令
  • angular form表单
  • android中文名
  • [置顶]公主大人接下来是拷问时间31
  • js下拉框怎么设置
  • javascript define的用法
  • jQuery+ajax实现滚动到页面底部自动加载图文列表效果(类似图片懒加载)
  • 座机怎么查来电显示号码
  • 12366纳税服务热线接收税收违法行政行为举报管理办法
  • 自贡市税务局稽查局领导
  • 地方税务局办税流程
  • 国税合并地税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设