脚本宝典收集整理的这篇文章主要介绍了PHP企业级应用之常见缓存技术篇,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
普遍缓存技术
数据缓存:这里所说的数据缓存是指
数据库查询缓存,每次访问
页面的时候,都会先检测相应的缓存数据是否存在,如果不存在,就连接
数据库,得到数据, 并把
查询结果序列化后保存到
文件中,以后同样的
查询结果就直接从缓存表或
文件中获得。
用的最广的例子看Discuz的
搜索功能,把结果ID缓存到
一个表中,下次
搜索相同关键字时先
搜索缓存表。
举个常用的
方法,多表关联的时候,把附表中的
内容生成数组保存到主表的
一个字段中,需要的时候数组分解一下,这样的好处是只读
一个表,坏处就是两个 数据同步会多不少步骤,
数据库永远是瓶颈,用硬盘换速度,是这个的关键点。
每次访问
页面的时候,都会先检测相应的缓存
页面文件是否存在,如果不存在,就连接
数据库,得到数据,
显示页面并同时
生成缓存
页面文件,这样下次访问 的时候
页面文件就发挥作用了。(模板引擎和网上常见的一些缓存类通常有此
功能)
时间触发缓存:
检查文件是否存在并且时间戳小于设置的过期时间,如果
文件修改的时间戳比当前时间戳减去过期时间戳大,那么就用缓存,否则更新缓存。
内容触发缓存:
当插入数据或更新数据时,强制更新缓存。
静态缓存:
这里所说的静态缓存是指
静态化,直接
生成HTML或xml等文本
文件,有更新的时候重
生成一次,适合于不太变化的
页面,这就不说了。
以上
内容是
代码级的
解决方案,我直接CP别的框架,也懒得改,
内容都差不多,很容易就做到,而且会几种方式一起用,但下面的
内容是服务器端的缓存方 案,非
代码级的,要有多方的合作才能做到
内存缓存:
Memcached是高
性能的,分布式的内存对象缓存系统,用于在动态应用中减少
数据库负载,提升
访问速度。
这里说下Memcached的例子:
代码如下:脚本宝典总结
以上是脚本宝典为你收集整理的PHP企业级应用之常见缓存技术篇全部内容,希望文章能够帮你解决PHP企业级应用之常见缓存技术篇所遇到的问题。
如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。