1、加速无数据的访问速度
毋庸置疑取数据先去取下memcache里的数据,如果没有再去数据库取数据
但这样如果我取100次都是没有的那么我得去数据库去取100次 如果还是重复的。。。那么效率就不高了
解决办法
-
//在数据库取数据
-
<wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr> if<wbr></wbr>(!$row)//如果没有数据
-
<wbr><wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr></wbr> memcache_set($dbh->memcache, $cacheid, 'x', 0, 300);
-
<wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr> else//有数据
-
<wbr><wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr></wbr> memcache_set($dbh->memcache, $cacheid, $id, 0, 0);
不知道大家是否有看出这样处理的巧妙,为什么会往memcache里面设置一个’x'的值?还是300秒就过期了?
呵呵 原来是这样的:
如果没有数据,很平常的到数据库去取数据
如果数据存在于数据库,那么就给memcache里面设置数据,并且不过期,
如果数据不存在于数据库,那么就给memcache里面设置一个值为x的数据,但过期时间比较短,这样放置不久将来会也许数据库会存在这个数据,在不过期的时间里如果再访问这个数据,那么就直接取memcache的数据,就不需要到数据库去查询这个不存在的数据了,在海量数据和海量访问的时候,这样处理的效率很高呢
分享到:
相关推荐
memcache数据库缓存,降低数据库压力
memcache数据库缓存.pdf
memcache_php使用测试
如果没有Memcache做为中间缓存层,数据访问不可能吃得消,对于一般网站,只要具备独立的服务器,完全可以通过配置Memcache提高网站访问速度和减少数据库压力,这里主要讨论一下Memcache和MySQL数据库交互过程的流程...
压缩包中包含最新版Win32 Memcache服务器端和安装及测试文档
Memcache缓存与Mongodb数据库的优势和应用
阿里云-云数据库Memcache-快速入门.pdf
阿里云-云数据库Memcache-API手册.pdf
Memcache安装配置使用说明 亲测可用
对数据库的高频率访问是限制数据使用率的一个瓶颈,所以可以给数据库做一个高速缓存。memcache就是一个理想的选择。而且也是分布式开发必学的。
1、Redis和Memcache都是将数据存放在内存中,都是内存数据库。不过memcache还可用于缓存其他东西,例如图片、视频等等; 2、Redis不仅仅支持简单的k/v类型的数据,同时还提供list,set,hash等数据结构的存储; 3...
整理了一个Memcache数据缓存操作类库文件,希望对各位会有帮助,操作类就是把一些常用的一系列的数据库或相关操作写在一个类中,这样调用时我们只要调用类文件,如果要执行相关操作就直接调用类文件中的方法函数就可以...
Windows Memcache 安装 dotnet 使用实例及动态库
Memcache是一个高性能的...使用Memcache的网站一般流量都是比较大的,为了缓解数据库的压力,让Memcache作为一个缓存区域,把部分信息保存在内存中,在前端能够迅速的进行存取。那么一般的焦点就是集中在如何分担数据
Memcache是danga.com的一个项目,最早是为 LiveJournal 服务的,目前全世界不少人使用这个缓存项目来构建自己大负载的网站,来分担数据库的压力
memcache的配置及使用——memcache及其客户端telnet
Memcache方法介绍及应用实例教程php.doc
memcache是一套分布式的高速缓存系统,由LiveJournal的Brad Fitzpatrick开发,但目前被许多网站使用以提升网站的访问速度,尤其对于一些大型的、需要频繁访问数据库的网站访问。
主要讲述memcache分布式缓存的的配置使用