暂无图片
暂无图片
暂无图片
暂无图片
暂无图片
涨知识_咖谈memcached的几大特点
510
5页
0次
2019-11-22
5墨值下载
【引言】








,以及最近的国产数据库


 

;列存储数据
!
),还需要站在更高一层的角度去思考如何更好地支持各种各样的业务需求。
数据架构的设计当然也有包含
"
#$
$%
#&&
等消息队列的应用
解耦,异步消息,流量削锋等作用,实现高性能,高可用,可伸缩和最终一致性架构。
鉴于现在互联网用户数量大、高并发访问的特性,数据缓存的提出就是一个很自然的事
业界有句话叫:“性能不够,缓存来凑”;今天我们主要来聊下数据缓存。
最近在系统的学习数据缓存这块的知识,比较有代表性的就是
'
(()'
。今天
主要聊一下
(()'
下主要内来自下参
)*+,--&.'.- /00012134-"-'-53620673
据自身理解,做了适当调整。
memcached
的几大特点
1. memcached
最大的优势是什么?
()'
最大的好处就是它带来了极佳的水平可扩展性,特别是在一个巨大的系统中。
由于客户端自己做了一次哈希,那么很容易增加大量
(()'
到集群中。
(()'
间没有相互通信,因此不会增
(()'
的负载;没有多播协议,不会网络通信量爆炸
(+'
(()'
很好了?
(()'
89
用了?再增加几台;有多余的内存?在增加几台。
2. memcached
MySQL
querycache
相比,有什么优缺点?

有个使用方便的
)
,可以自动地缓存

查询结果,被缓存

查询
被反快速

)
集中,连
)

服务器都会受益。

)
:)
(()'
(
只需要很少的时间,但是当写操作很频繁时,

)
会经常让所有缓存
数据都失效。
在多
89

)
扩展问
&
)。在
89
)
会增加一个全局
&$

由于需要刷新更多缓存数据,速度会

)
,是存储数据只能

询结
(()'
,可搭建出各种高效的缓存。如,可以执行多个立的查询,一个用
&;
),后将用户存到
(()'
中。
)

别的,不可能做到这一点。在发量的业务需求
)
会有所帮助,但随着
规模的增加,
)
弊将大于
)
能够用的内存容量受到

服务器实际空内存间的限制数据库服
务器增加更多的内存来缓存数据,然是很好的。但是,有了
(()'
,只要空闲
的内存,都可用来增加
(()'
集群规模,可以缓存更多的数据。
3. memcached
localcache
PHP APC
mmap
),有什么优缺点?
)
< )=
)
用的存容
)
(()'
)
都要好,是它不但可以存储任意的数据,而且没有网络存延迟
)
的数据查询更快,考
))((
的数
)
中;页面
都需要加载一数量较少的数据,考虑放
)'
)
缺少集失效
+'"
)的特性。
(()'
集群中,更新
一个
$
会让所有的观察者觉察可以使用此特性做会话失效的机制。但在
)

只能通知所有的服务器刷新
)
(很,不扩展性)或者仅仅依时失效
机制
此外,
local cache
面临着严重的服务器理实内存限制,只能纵向扩展。
4. memcached
cache
机制
()'
主要的
)
机制
#9
(最近最少用)算法
>
时失效。
存数
(()'
可以中可
(()'
的内存不够,过期
&
会优替换,接到最被使用的
&
5. memcached
如何实现机制
不实现
()'
(()'
点失去了所有数据,可数据源(比如数据库)再获取到数据。此场景下,
缓存数据库数,数据库
89
和内存造成巨大压力的会数据库宕机
从而形成一系列连反应,造成整个系统崩溃
注意,因
Memcached
没有做数据持久化处理,数据失效引的数据新加载,会致缓
雪崩防止此现,通常处理途径为
1.
或者列的方式会有大量的线程对数据库一次从而避免
失效时大量的并发层存储系统
2.
简单案为将缓存失效时间分散开;
3.
给每一个缓存数据增加相应的缓存标记记录缓存的失效,如果缓失效
of 5
5墨值下载
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文档的来源(墨天轮),文档链接,文档作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论

关注
最新上传
暂无内容,敬请期待...
下载排行榜
Top250 周榜 月榜