Memcache 是一款开源的高性能的分布式内存对象缓存系统,用于在应用中减少对数据库的访问,提高应用的访问速度,降低数据库负载。
为了在内存中提供高速的数据查找能力,Memcache使用Key-value的形式存储和访问数据,在内存中维护了一张巨大的HashTable,是的对数据的查找的时间复杂度降低到了O(1),保证了对数据的高速访问。
由于内存的大小是有限的,当内存中没有过多的空间来存储新的数据时,Memcache会使用LRU(Least Recently Used)算法,将最近最少未使用的数据淘汰掉,以腾出空间来存放新的数据。
Memcache客户端与服务端通过构建在TCP协议之上的memcache协议来进行通信,协议支持两种数据传递、这两种数据分别是文本行和非结构化数据。
文本行:主要用来承载客户端的命令及服务端的响应。
非机构化数据:主要用于客户端和服务端数据的传递。
Memcache本身并不是一种分布式的缓存系统,他的分布式主要是由访问他的客户端来实现的。
时间: 2024-11-03 21:45:38