社区
Web 开发
帖子详情
对于页面常用不变的数据如何缓存?缓存sql结果或是页面
syhan
2007-03-23 05:53:29
最近做项目的时候遇到一个问题,对于一个经常被访问的页面,上面含有若干需要动态从数据库读出的数据(可能是不变的),如果每访问一次页面就对数据库进行一次交互,代价是不是太大了?我是想对这些常见的结果进行缓存,google了一下好像有缓存sql和页面缓存,请教一下那种方法好,对数据库的开销最小,我的数据库是mysql,还有大家有一些什么其他更好的建议也请一并给出,谢谢:)
...全文
419
7
打赏
收藏
对于页面常用不变的数据如何缓存?缓存sql结果或是页面
最近做项目的时候遇到一个问题,对于一个经常被访问的页面,上面含有若干需要动态从数据库读出的数据(可能是不变的),如果每访问一次页面就对数据库进行一次交互,代价是不是太大了?我是想对这些常见的结果进行缓存,google了一下好像有缓存sql和页面缓存,请教一下那种方法好,对数据库的开销最小,我的数据库是mysql,还有大家有一些什么其他更好的建议也请一并给出,谢谢:)
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xiangbo520
2007-03-29
打赏
举报
回复
是谁说缓存标签是相对于用户的?liaohaiying(超菜)的两个红星真是白得了,缓存标签是可以指定作用域的,可以是session,application,page等,其中application就是全局性的。
syhan
2007-03-23
打赏
举报
回复
嗯,对,我要的效果就是如liaohaiying(大菜) 所说的,但是如何将数据放到服务器内存中(spring乎?),并且在数据有更新的时候通知服务器更新呢,难不成要在服务器端运行一个daemon进程不成?其实就是数据读出的这个过程应该在什么时候进行,如何进行?
to xiangbo520(充栋汗牛)
oscache我看了,很酷,有些小的页面可行,谢谢你
liaohaiying
2007-03-23
打赏
举报
回复
页面缓存是相当于用户的,这个作用不是很大,因为这样每个用户一进来还是要先从数据库中取出数据再缓存。
解决方法是把数据存放到服务器的内存,这样当有用户取数据就从内存里取,因为用户从数据库取数据首先取出后还是先放到内存的,你先把数据放到内存那么就不用到数据库取了。
还有一种更简单的方法就是把短时间内不变的数据库内容读出写成HTML文件,这样用户就直接访问HTML文件,然后程序自动定期或当数据库有新数据加入时更新这个HTML文件就行了
xiangbo520
2007-03-23
打赏
举报
回复
使用缓存标签oscache或者apache common cache,使用起来很方便,只需要在你想缓存的程序段两端加上标签,并设置一些参数,如缓存时间,声明周期等,就可以了
craig_wolfdon
2007-03-23
打赏
举报
回复
你的意思是用pageContext?这个是随页面的生成而生成随页面的消失而消失的把,
syhan
2007-03-23
打赏
举报
回复
如果按楼上的做法的话数据应该会在整个浏览器进程中,那样的还不如使用页面缓存的好,不过还是多谢建议了,继续球其他的方法和建议:)
craig_wolfdon
2007-03-23
打赏
举报
回复
这样做你看可不可以,自己在页面做一个缓冲器,把经常用的数据存在这个容器(比如vector)里面,然后存在session里面或者application里面,然后以后需要的时候先直接查找这个容器,假如容器里面没有再去连数据库, 就类似于cache一样,
Oracle 结果集
缓存
(Result Cache)的失效机制及
常用
SQL
本文详细介绍了Oracle
数据
库中结果集
缓存
的工作原理及其失效机制。包括
缓存
的定义、核心作用、依赖性与自动失效机制,以及在实际应用中可能出现的争用和内存问题。还提供了配置建议和
常用
监控
SQL
,帮助DBA更好地管理和优化
缓存
性能。
SQL
结果
缓存
面对大量
数据
的实时统计分析需求,通过调整索引、内存管理等手段优化
数据
库性能,但多用户并发下CPU成为瓶颈。采用Oracle 11g的
SQL
结果
缓存
特性,通过RESULT_CACHE Hint和相关初始化参数配置,有效提升查询效率。注意,当执行计划变化或特定操作(如DELETE)时,结果
缓存
可能不生效,需谨慎使用。
SQL
查询
缓存
本文介绍了一种通过
缓存
SQL
查询结果来减少
数据
库负载并提升PHP脚本性能的方法。重点讲解了如何利用PHP的serialize和unserialize函数
缓存
查询结果,并讨论了
缓存
更新策略。
在Web服务应用中,如何编程使用Redis的
缓存
功能?包括
缓存
页面
内容、
缓存
数据
库查询结果、用户会话信息等代码分享
在Web服务应用中,Redis是流行的内存
数据
结构存储,可作
数据
库、
缓存
和消息中间件。本文介绍了Redis作为
缓存
的原理和作用,还阐述了用Redis
缓存
页面
内容、
数据
库查询结果和用户会话信息的作用、实现方法,并给出Python示例代码,能提升Web应用性能。
My
SQL
核心技术原理之:查询
缓存
与结果
缓存
本文介绍
数据
库
缓存
技术,包括查询
缓存
和结果
缓存
,阐述
缓存
击穿、穿透、雪崩等概念。详细讲解查询和结果
缓存
的实现原理、操作步骤及
SQL
文本匹配规则,给出代码实例。还探讨热点
数据
缓存
和分片
缓存
方案等未来发展趋势与挑战,并解答常见问题。
Web 开发
81,111
社区成员
341,725
社区内容
发帖
与我相关
我的任务
Web 开发
Java Web 开发
复制链接
扫一扫
分享
社区描述
Java Web 开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章