代码改变世界

随笔分类 -  memcache

memcached源代码阅读笔记(二):网络处理部分

2012-01-02 11:30 by 横刀天笑, 3666 阅读, 收藏, 编辑
摘要: 既然memcached是一个缓存服务器,而且要提供高效的缓存服务,那么网络层肯定要非常有效率才行。要能支撑大量的并发连接,还要有很优秀的响应速度。除此之外,因为memcached的核心业务并不是网络层,它的核心是缓存机制。那么就必须采用一种机制,将网络层隔离,以免网络通信部分缠绕在系统的各处,扰乱了核心逻辑。 阅读全文

memcached源代码阅读笔记(一)

2011-12-02 14:28 by 横刀天笑, 4122 阅读, 收藏, 编辑
摘要: 缓存在系统设计中占有非常重要的地位。对于构建大型系统,缓存的使用非常重要。一般,缓存的目的都是为了将那些耗时又耗资源的东西,临时的保存在一个能够快速获取的地方,以此来减少资源的消耗,让我们可以更快的得到那些东西。简单的情况,比如我们可以把从数据库里取到的数据放到一个hashtable中,比如以sql为条件。在一定时间内,只要去数据库里取一次,然后就可以重复利用多次。这是个非常简单的缓存利用场景。但是随着系统规模的增长,这种缓存机制就慢慢的不足以应付我们的需求。因为hashtable的这种方式,决定着这个hashtable肯定是与我们的应用放到同一个进程的。如果系统规模大了,我们可能要部署多个应 阅读全文