PHP与Memcache结合浏览量延迟方案

2015/01/11 | 星期日 分类:PHP | 没有评论 标签: , | 作者: | 2,269 views

这篇干货,适用中小型网站浏览更新频繁,减少mysql服务器(鸭梨),减少服务器io的一种绝佳方案。

平常在工作,开发中设计或做数据统计的时候,习惯把浏览量放在资源表中,一般小网站做法是访问一次更新一次资源浏览量:比如blog系统,访问blog详情页时,blog浏览量增加1,就会做一次数据update,这样的后果是,频繁更新数据库,造成数据库链接过多 + 服务器IQ读写频繁,网站浏览量稍大点服务器就容易宕机。.seedpaddy.com

看图说话,浏览量更新流程图.seedpaddy.com
view-delay

结合上图,解析下流程图:
1.资源浏览量,比如blog详情页的浏览量 views = mysql(数据表的浏览量) + memcache(浏览量) 每次访客访问blog详情页,浏览量就会+1,使用浏览延迟更新,仅更新memcache中的浏览量,并把浏览量缓存的key hash到array中(这很重要),当memcache中的浏览量达到某一值,比如100时,做一次update mysql数据的浏览量,并即时把memcache的浏览量设置为0。

2.由于资源浏览量部分保存在memcache中,重启memcache,或者其他原因,浏览量会丢失,需要额外开发一个定时任务更新缓存的浏览量到mysql中;
阅读全文

PHP 链接 Memcached 集群封装类库

2014/11/21 | 星期五 分类:PHP | 一条评论 标签: | 作者: | 2,573 views

近一年多,项目中用到memcache技术,最近写了个小程序,解决了项目中一个难点(流量量频繁更新数据库以致mysql服务连接过多,超负荷运行,干货待下周博文:PHP与Memcache结合浏览量延迟方案,此次抽空先介绍 PHP链接Memcache 集群封装类库 特意有此文,Demo

阅读此文,请务必要关注上一篇文章介绍:PHP链接MEMCACHE安装与概念理解

先上干货,代码注释很详细,不再重复介绍.seedpaddy.com

PHP Memcache 配置调用运行文件

全局函数,这里有玄机,待下篇文章:”PHP与Memcache结合浏览量延迟方案” 回再次介绍.seedpaddy.com

PHP链接Memcache 集群封装类库(真正的干货,都在里边,需要活用).seedpaddy.com
阅读全文