Memcached使用介绍

2018-03-08 16:13:27 浏览数 (1)

memcached是高性能的分布式内存缓存服务器,通过缓存数据库查询结果,减少数据库访问次数,以提高动态Web应用的速度和可扩展性。

特点:

  1. 协议简单;
  2. 机遇libevent的事件处理;
  3. 内置内存存储方式;
  4. 采用不相互通信的分布式;

memcached的对象实际上放置在内存中,这是如此快速的原因。

memcached如何支持高并发?

memcached使用多路复用I/O模型(epoll,select等),传统阻塞I/O中,系统可能会因为某个用户连接还没有做好I/O准备而一直等待,直到这个连接做好I/O准备。如果这时还有其他用户连接到服务器,可能会因为系统阻塞而得不到响应。

而多路复用I/O是一种消息通知模式,用户连接做好I/O准备后,系统会通知我们这个连接可以进行I/O操作,这样就不会阻塞某个用户连接。因此才能支持高并发。

线程数并不是越多越好,一般设置为CPU核数,这样效率最高。

memcached分布式布置方案

有1台memcached服务器不能满足我们的需求,需要布置多台memcached服务器。但是有个问题,怎么确定一个数据应该保存到哪个服务器上呢?

有两种方案,第一种普通Hash分布,第二种一致性Hash分布。

0 人点赞