集中式缓存系统memcached

系统 Linux
memcached是一套分布式的快取系统,当初是Danga Interactive为了LiveJournal所发展的,但目前被许多软件(如MediaWiki)所使用。

 

[[58547]]

Memcached是什么?

memcached是一套分布式的快取系统,当初是Danga Interactive为了LiveJournal所发展的,但目前被许多软件(如MediaWiki)所使用。这是一套开放源代码软件,以BSD license授权释出。

memcached缺乏认证以及安全管制,这代表应该将memcached服务器放置在防火墙后。

memcached的API使用三十二位元的循环冗余校验(CRC-32)计算键值后,将资料分散在不同的机器上。当表格满了以后,接下来新增的资料会以LRU机制替换掉。由于memcached通常只是当作快取系统使用,所以使用memcached的应用程式在写回较慢的系统时(像是后端的数据库)需要额外的程式码更新memcached内的资料。

Memcached适合什么场合?

在很多时候,memcached都被滥用了,这当然少不了对它的抱怨。我经常在论坛上看见有人发贴,类似于“如何提高效率”,回复是“用memcached”,至于怎么用,用在哪里,用来干什么一句没有。memcached不是***的,它也不是适用在所有场合。

Memcached 是“分布式”的内存对象缓存系统,那么就是说,那些不需要“分布”的,不需要共享的,或者干脆规模小到只有一台服务器的应用,memcached不会带来 任何好处,相反还会拖慢系统效率,因为网络连接同样需要资源,即使是UNIX本地连接也一样。 在我之前的测试数据中显示,memcached本地读写速度要比直接PHP内存数组慢几十倍,而APC、共享内存方式都和直接数组差不多。可见,如果只是 本地级缓存,使用memcached是非常不划算的。

Memcached在很多时候都是作为数据库前端cache使用的。因为它比数据库少 了很多SQL解析、磁盘操作等开销,而且它是使用内存来管理数据的,所以它可以提供比直接读取数据库更好的性能,在大型系统中,访问同样的数据是很频繁 的,memcached可以大大降低数据库压力,使系统执行效率提升。另外,memcached也经常作为服务器之间数据共享的存储媒介,例如在SSO系 统中保存系统单点登陆状态的数据就可以保存在memcached中,被多个应用共享。

需要注意的是,memcached使用内存管理数据, 所以它是易失的,当服务器重启,或者memcached进程中止,数据便会丢失,所以memcached不能用来持久保存数据。很多人的错误理 解,memcached的性能非常好,好到了内存和硬盘的对比程度,其实memcached使用内存并不会得到成百上千的读写速度提高,它的实际瓶颈在于 网络连接,它和使用磁盘的数据库系统相比,好处在于它本身非常“轻”,因为没有过多的开销和直接的读写方式,它可以轻松应付非常大的数据交换量,所以经常 会出现两条千兆网络带宽都满负荷了,memcached进程本身并不占用多少CPU资源的情况

memcached51CTO下载地址:http://down.51cto.com/data/326059

 

 

 

责任编辑:庞桂玉 来源: 网络
相关推荐

2011-10-19 13:53:11

2020-08-19 17:56:46

缓存Redis集中式

2023-08-22 14:20:21

2019-11-07 11:21:21

安全软件IT

2022-03-29 14:28:03

架构安全设计

2012-02-21 09:59:52

2009-07-02 19:24:50

安全管理Windows审计

2014-08-29 16:39:27

华为

2009-07-20 11:11:34

分光器FTTP

2015-07-28 09:44:38

集中式云数据加密安全漏洞

2017-06-27 10:21:12

vRealize LoNSX日志管理

2014-08-05 09:15:14

SDN

2022-02-09 10:52:27

智能汽车网联

2024-01-22 13:55:00

2022-06-06 07:32:44

数据库系统分布式

2021-08-12 10:25:33

SVN服务器VisualSVN s

2013-04-24 10:58:24

系统安全IMAVxWorks

2013-07-10 16:36:02

集中式VDI分布式VDI

2022-07-04 07:53:27

分布式存储云技术

2022-06-29 10:19:57

VMware
点赞
收藏

51CTO技术栈公众号