Home >Backend Development >PHP Tutorial >memcached - php在pageCage、memCache、RedisCache和SSDBCache缓存的使用一般来讲对应哪些应用场景的?

memcached - php在pageCage、memCache、RedisCache和SSDBCache缓存的使用一般来讲对应哪些应用场景的?

WBOY
WBOYOriginal
2016-06-06 20:31:071129browse

问题主要是思考,在实际应用场景下,我的团队做法是会对一些浏览量比较少的页面做pageCache缓存处理,然而在一些几乎没人看的页面甚至不设缓存,但是针对一些浏览量较多的会设置memCache缓存,而对于核心业务页面还有一些浏览量很大的页面采用页面缓存pageCache+SSDBCache缓存处理。

使用缓存的目的很明显,就是为了降低服务器压力和数据库读取压力,但是缓存的使用也不能滥用,所以我很困惑这些缓存的使用:它们所对应的最适合的应用场景应该是什么?

问题详解:
1.以上四种缓存技术的最佳应用场景是什么?
2.你认为最佳的缓存策略是什么?
3.有哪些缓存机制你比较欣赏的?

注:我在团队开发的时候遇到缓存应用的混淆,乱用缓存或者不知道对应的场景应该采取哪些缓存策略才是最适合(没有最好的缓存策略,只有最适合的)。谢谢各路大牛,可以不局限在PHP,因为编程语言基本相通,都是派生同堂嘛,(*^__^*) 嘻嘻,可以针对某个问题解答,希望大牛全部解决,谢谢 。 。 。

回复内容:

问题主要是思考,在实际应用场景下,我的团队做法是会对一些浏览量比较少的页面做pageCache缓存处理,然而在一些几乎没人看的页面甚至不设缓存,但是针对一些浏览量较多的会设置memCache缓存,而对于核心业务页面还有一些浏览量很大的页面采用页面缓存pageCache+SSDBCache缓存处理。

使用缓存的目的很明显,就是为了降低服务器压力和数据库读取压力,但是缓存的使用也不能滥用,所以我很困惑这些缓存的使用:它们所对应的最适合的应用场景应该是什么?

问题详解:
1.以上四种缓存技术的最佳应用场景是什么?
2.你认为最佳的缓存策略是什么?
3.有哪些缓存机制你比较欣赏的?

注:我在团队开发的时候遇到缓存应用的混淆,乱用缓存或者不知道对应的场景应该采取哪些缓存策略才是最适合(没有最好的缓存策略,只有最适合的)。谢谢各路大牛,可以不局限在PHP,因为编程语言基本相通,都是派生同堂嘛,(*^__^*) 嘻嘻,可以针对某个问题解答,希望大牛全部解决,谢谢 。 。 。

pagecache是所谓是filecache吧?

题主的问题,简单的说1、太多,不好细说。2和3,只有合适,没有最好。好像有点废话

简单来说,现在用file形式cache的概率比较低了,除非是小应用,单机部署,就可以考虑,不然集群部署的时候,file的存储读取都是大问题,并且效率来说,file有IO开销,即使是SSD的物理机(已经很快了),也没内存快。

memcache是主流已久的方案了,如果是做session什么的,或者简单的KV的缓存,很好的选择,应付绝大多数场景都OK,在这几年面对大量NOSQL的压力,也衍生了部分产品,例如memcachedb之类的,都可以用一下,但memcache的本质是缓存,极力不建议做落地存储。

redis是nosql的热门之一了,亮点一堆一堆的,不少项目直接都用来取代mc,只做kv缓存的时候,性能跟mc很接近了。很多人都看中几点,一是可持久化,单纯的mc是做不到的,二是丰富的数据结构,mc的软肋是只能key-value,而redis做队列做广播,还有竞态处理什么的都很完善。所以如果你的业务很复杂,可以考虑redis。但是但是,依然不建议作为落地存储使用

SSDB是什么。。。没接触过,原谅我比较low。。。就不多废话了,总的来说,根据具体业务来考虑用什么缓存,什么方式缓存,先找出目前性能瓶颈再说吧。

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn