网页缓存的生命周期是多少?
发布网友
发布时间:2022-04-22 11:52
我来回答
共3个回答
热心网友
时间:2022-04-27 12:10
缓存的生命周期内的活动
永久不过期,永久不变更的内容,这类东西就不应该放在缓存。缓存是临时的存储,而不是永久的,所以缓存的生命周期是有限的。
它依次可能会经历如下活动:
1.进入缓存。(进入缓存的时候,可能需要指定它以后的过期策略,如果不指定,需要使用系统默认的过期策略)
2.从缓存中获得它,注意,这时候需要处理线程安全的问题。
3.更新缓存,注意,也需要考虑线程安全问题
4.离开缓存,这个可能是外部请求,也可能是缓存根据过期策略把它清理掉。
缓存的过期策略
一般我会问,你所接触的缓存中,碰到过那些缓存过期策略?
最常见的几种过期策略如下:
多长时间没有被请求,则过期,最典型的就是ASP和ASP.net 提供的 Section 功能。其实它就是一个缓存。
依赖于文件变更的缓存,一旦文件被修改,缓存则过期,典型的是 WEB站点的 Web.config ,一旦这个文件变更,不但缓存重起,IIS进程也会进行一次释放工作。
在此基础上,可能看到很多依赖关系的缓存过期策略。比如依赖于数据库的缓存过期策略。
当然,业务逻辑里可能会有更复杂的过期策略,必须CSDN新版积分制论坛中,帖子列表缓存会在列表数据缓存达到600时,把它清理到550条数据。
又比如新积分制论坛帖子的缓存过期,则是没有任何列表引用这个帖子后,则这个帖子过期。
缓存的同步问题
使用缓存,则意味着同样的数据,可能有多份并存。如果你的代码没有考虑某种情况,导致了这两份数据不一致了。这时候就会有问题发生。
解决方法很简单,把你的业务逻辑,代码触发情况都考虑清楚,不要遗留没有触底的地方。
简单的方法会导致你的代码逻辑变得非常复杂。
这也就是有些人,在非必要的时候,建议你不要用缓存的原因。一旦开始使用缓存,你就应该准备增加大量的代码来处理数据同步的问题。
初始化填充缓存数据
有时候在缓存被初始化后,还需要预先填充一些数据到缓存中。这就是缓存数据的初始化操作。
缓存数据的初始化操作需要考虑以下问题:
1.需要多长时间进行初始化,一般如果是站点的话,我们可能在 Global.asa 的 Application_OnStart 中处理这个初始化工作。初始化的一般不能太久,这时候就是考验我们代码优化的能力了。
2.初始化的时候,一般是批量导入数据,而不是我们正常使用的时候,一次处理一个数据。
总结:
本文介绍了我对缓存的一些观点,而没有深入涉及到具体的缓存技术。希望通过本文的讲述,让只会缓存用法不懂缓存思想的人有初步的了解。
热心网友
时间:2022-04-27 13:28
有很多理由去解释理解ASP.NET页面生命周期是非常重要的,主要是要去理解什么地方放置什么特定的方法,什么时候我们应该设置什么相关的属性。如果去开发自定义的服务器控件,理解生命周期对纠正控件初始化时候的错误,以及使用view-state和后台代码设置属性是非常有用的。(控件事件只与ASP.NET页面相关)
页面生命周期要看它是否是第一次请求,还是回发(本身页面请求),最后决定是否到Web服务器。当一个网页被Web服务器请求时,在回发到web浏览器之前,会经过一系列步骤/事件(如初始化,控件实例化,state的恢复和保存,执行事件处理代码,渲染)。
如果我们正确地使用和操作页面生命周期事件,它对web应用程序开发会是一个非常方便和强大的工具。
热心网友
时间:2022-04-27 15:02
和你电脑的内存大小有关系
前端浏览器缓存机制Cache-Control:max-age表示缓存资源的最大生命周期,单位是秒所以Expires结合Cache-Control一起使用,大型网站中一般比较适用协商缓存-Last-Modified:值为资源的最后更新时间,随服务器response返回If-Modified-Since...
电脑下载电影对硬盘寿命是否有影响?
据权威测试,目前主流的各型号硬盘,在不间断读写下,寿命是2-5年。在模拟BT下载的环境下,缓存为大多数BT软件默认的缓存级别情况下,寿命3-8年。也就是说,你24小时BT下载,只要是用软件默认的缓存设置,最差也要3年...
谁能告诉我C#中缓存的生命周期
至于缓存的生命周期,输出缓存是一个绝对过期时间,超出该时间则缓存失效.数据缓存可以设置绝对过期时间和相对过期时间,在相对过期时间范围内没有访问该缓存,则失效,否则继续延长缓存期限.第三方缓存一般设计的是绝对过期时间.在内...
一个web页面的生命周期是什么?
人都知道是有生命周期的,一个人从呱呱落地到慢慢老去经历了一个生命轮回,这是生命的一个周期。\x0d\x0a同样ASP.NET开发的WEB页面也有它自己的生命周期,从生成到销毁,也经历了不同的阶段和过程。对于ASP.NET页面生...
不同搜索引擎的搜索结果为什么不一样
有研究指出50%网页的平均生命周期大约为50天([Cho,2002]J.Cho,"CrawlingtheWeb:Discoveryandmaintenanceoflarge-scaleWebdata,"StanfordUniversity,PhD,2002.)。其次爬取所有的网页成本比较大。所以...
希捷 笔记本 7200转 64m 和 5400转 128m 有什么嘛区别
当你在拷大文件时才会感觉到速度差别大。2、缓存不同:硬盘缓存越大,对上一级的芯片的拖累就越小,因此128对上一级的芯片拖累小。3、寿命:硬盘的理论寿命是3万小时以上,两者在寿命问题上的区别并不大...
一般固态硬盘的使用寿命是多久
也就是1920/366=5.25年。如果你只是普通用户每天写入的数据远低于10G,就拿10G来算,可以不间断用52.5年,再如果你用的是128G的SSD的话,可以不间断用104年!这什么概念?它像普通硬盘HDD一样,理论上可以无限...
西数500g硬盘寿命多少小时
该硬盘属于机械硬盘。通常来说,机械硬盘的理论寿命大概有3万小时以上,一般硬盘一直开机工作(例如网站服务器的硬盘),3年就会寿终正寝,如果正常使用,6、7年应该没有问题。
微信内置浏览器的登录 cookie 默认是多久时效
这个要根据不同的网站来定的。如果网站设计者不给Cookies设定时间(即生命周期),那么就是当次浏览有效,关闭浏览器后Cookies就会自动失效(要注意的是手机上的浏览器退出后很可能是切换到后台,并不是真正关闭,这种情况下...
游戏生命周期多长
页游:由于进入门槛低于客户端市场,与此同时。3d网页游戏市场开发商和运营商云集,导致市场竞争更为激烈。认为,网页游戏市场平均胜利率低于客户端游戏市场。一般认为,一款普通网页游戏的平均运营寿命周期只有3-6个月,明显...