页面缓存OutputCache

本文深入探讨了页面缓存技术,介绍了如何通过@OutputCache指令实现服务器端缓存,减轻数据库压力,提升网页加载速度。文章详细解释了Duration属性的作用及VaryByParam参数的配置方法,以确保不同参数请求的独立缓存。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

缓存:把数据放到内存里面,下次请求的时候,直接从内存读取数据返回给客户端就可以了,不用再去访问数据库或者磁盘,用内存空间换磁盘读的时间。

页面缓存

使用@OutputCatch指令能够声明页面输出缓存,Duration表示缓存的时间。一秒为单位,超过这个时间缓存失效,再次生成以后还会再缓存20秒,依次类推。

这个缓存是在服务器缓存的,不是在客户端,因为用HttpWatch还是能看到向服务器提交的请求的,只不过服务器看到有还粗就没有再执行页面类。

缓存针对所有这个页面的访问者。这样1个访问者和一万个访问者、一次访问和100万次访问对数据库的压力是一样的。

<%@ OutputCache Duration="20" VaryByParam="none" %>

对于看新闻页面来讲,如果上面设置的话,则会缓存在第一个看到的新闻,因为?id=2、?id=3只是页面的不同参数而已,为了能让不同的新闻各自缓存,因此可以设置VaryByParam="id",表示对于相同页面的不同id参数进行单独缓存。多参数的话VaryByParam="id;number",分号隔开。

如果想让任何不同的查询字符串都创建不同的缓存,则设置VaryByParam="*",一般情况下设置"*"就足够。

 

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值