最新消息:欢迎加入小松的QQ群一起讨论一起学习,本站启用elasticsearch全文检索系统,提供搜索的精确度

php缓存和缓存策略

PHP 1107浏览 0评论

之前还有讲过php加速器加速php执行,主要是加速php的执行,但是php+mysql的开发模式,目前的主要效率都在mysql上,为了减轻mysql的压力,于是就出现了缓存。

php缓存原理
缓存的原理是在你访问这个页面的时候,把这个页面或者数据保存起来,当你在访问的时候,数据和页面都直接调用缓存不用在查询了,这样就减少的mysql的查询次数,既给mysql减压。
就我接触到得情况讲一下。
目前主要的缓存模式有
文件缓存
主要是以文件的形式把数据保存,文件名一般为ID
内存缓存
把数据保存到内容里,如memcached
这里还要讲一下缓存策略,这个很重要
1 页面缓存
其实就是把整个页面保存保存起来,当你在使用的时候先检查缓存存不存在,如果不存在就生成然后保存,如果存在就直接调缓存。这种缓存策略我在使用的时候主要是为了解决搜索引擎抓取的,打个比方www.phpsong.com这个网站有很多搜索引擎同时在抓取,而我的页面数量有很多,这个可能出现服务器被搜索引擎抓取到当机的情况,为了解决这个问题,我就会把页面保存下来。笔者遇到到被百度抓取到当机的情况。
2 根据时间触发
就在使用的时候检查一下文件的过期时间,有些更新比较平凡这个时候就要设置一个过期时间,到了这个时间久删除缓存,重新执行查数据。打个比方就拿我的网站举例我要每10分钟推荐显示新的文章,这个时候你有可以每10分钟删除缓存重新生成,这样就达到目的了。还有一种情况推荐的文章每刷新一下都要显示不通的内容,这个怎么实现呢? 这个方式能做缓存吗,可以的看看我做法,我的做法就是我先取出100数据做缓存,显示的时候随机取10条,然后在定时删除缓存,这样就到达目的了。
3 内容触发
就是显示的内容发生变化的时候更新缓存,还是打个比方还是拿我的网站举例,文章内容页内容http://www.phpsong.com/370.html,当我不修改内容的时候缓存不清除,我在后台修改内容之后更新缓存。

没有最好得缓存技术,只有最合理地缓存策略

QQ交流群:136351212

如无特别说明,本站文章皆为原创,若要转载,务必请注明以下原文信息:
转载保留版权:小松博客» php缓存和缓存策略
本文链接地址:https://www.phpsong.com/399.html

发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
木有头像就木有JJ!点这里按步骤申请Gravatar头像吧!