PHP文件缓存与memcached缓存 相比 优缺点是什么呢【总结】

发布时间:2016-12-10 1:33:18 编辑:www.fx114.net 分享查询网我要评论
本篇文章主要介绍了"PHP文件缓存与memcached缓存 相比 优缺点是什么呢【总结】",主要涉及到PHP文件缓存与memcached缓存 相比 优缺点是什么呢【总结】方面的内容,对于PHP文件缓存与memcached缓存 相比 优缺点是什么呢【总结】感兴趣的同学可以参考一下。

如果不考虑其他任何问题,只比较速度的话,那肯定是mem快,但他们各有优缺点。 文件缓存优点: 1、由于现在的硬盘都非常大,所有如果是大数据的时候,放硬盘里就比较合适,比如做一个cms网站,网站里有10万篇文章,生成的文件大小总数可能就会很大。 2、数据的存放较为安全,由于是硬盘存放,所以在意外掉电的情况下,缓存文件不会丢失。 3、易于扩展,如果硬盘不够用,可以更换大硬盘或者添加硬盘,在容量上受的限制很小。 文件缓存缺点: 1、高并发时,硬盘的读写性能大幅度降低。 2、网站pv持续很高的情况下,硬盘寿命大大降低。 memcached优点: 1、读写性能优异,特别是高并发时和文件缓存比有明显优势。 2、memcached组建支持集群,并且是自动管理负载均衡。 memcached缺点: 1、缓存空间有限:据说一台电脑的mem缓存开到2g以上会出现不稳定,数据无故丢失的现象。 2、掉电丢失数据:由于是把数据放在内存里的,所有一旦机器掉电,数据也就全部丢失了。 一般建议:如果是做内容缓存的话,比如把一些不经常更改的文章放在文件缓存里比较合适,而mem则适合放一些频繁更改的数据,比如可以把session数据放进mem。   文件缓存耗IO、过期时间自行控制、不费带宽、不易采用分布式。 cache缓存耗内存、过期时间由cache控制、稍占带宽、易采用分布式。   在实际项目应用中,可以联合使用memcache和文件类型缓存。根据热度来把最热的数据放在内存里面。然后把一般的数据放在文件缓存中。 读取数据时,可以按照 memcache=>file_cache=>databases 这样的递归来处理。最大程度的利用缓存来减轻数据库的查询压力。 另外session不能放在内存里面。可以用redis存储session.定时把内存数据刷新到硬盘。这样万一断电或者其他故障,不至于所有session都失效。     memcache 的使用场景是:当你有大量的数据 >2G 大小,而这些数据是 有可能被很频繁的读写时,memcache可以使用集群,不但跨进程,而且跨机器。 文件缓存,现在较少使用了。因为磁盘io的随机定位是10ms 左右,而且磁盘io太频繁的话,会拖慢整个服务器的处理性能。也没办法支持高并发。 现在的大部分的时候都是将计算和io区分开,可以保证各自的性能。计算可以放到数据库去做,比如查询 ,连表啊 啥的。 io就nosql吧 这样支持高并发好点。

上一篇:MySQL数据库MyISAM和InnoDB存储引擎的比较
下一篇:软件滤波方法总结

相关文章

相关评论