Memcached是高性能的Key/Value数据缓存
特点:
协议简单:
基于libevent事件驱动处理
基于内存完成数据缓存LRU算法(最近最少使用算法)
memcached互不通信的集群:分布式
缺点:数据只在内存中,关机后数据丢失
旁路式缓存:
user->memcached
memcached只做缓存,由程序向memcached存数据和取数据,是一个独立的内存缓存,一切都要由程序控制存数据或取数据
一半在客户端,一半在服务端
php api:
memcache,memcached
c语言: libmemcached
varnish:代理式缓存:
user->varnish->mysql
xml,json,文本,协议
软件系统:
结构化数据:RDBMS
半结构化数据:JSON(Documenttion)->NSQL
非结构化数据:
key: hash(url)
value: url对应的值
mysql:
key:hash(select语句)
value:查询的结果