Memcached一般被用于高并发场景下,数据库前的缓存层,用以缓解数据库的读取压力,提高应用速度和可扩展性。
特点:
- 协议简单,基于简单的文本行协议
- 基于libevent的事件处理,使其在linux上能发挥高性能
- 内存机制,所有数据仅存储在内存中,一旦重启则全部失效,容量达到一定阈值,会根据LRU算法删除。同时提供key的expiretime。
- 集群依赖客户端,分布式功能不由服务器实现,而是由客户端管理。服务器之间不进行通信。客户端维护可用服务器列表。直接计算key应该存到哪个服务器,通知服务器添加、删除数据。