1,缓存:Memcached
- 只支持简单的Key / Value结构
- 不支持数据持久化
- 每个Key的值最大1MB
- 协议简单:不使用复杂的XML等格式,而使用简单的基于文本行的协议
- 基于libevent的事件处理:libevent是个程序库,它将Linux的epoll、BSD类操作系统的kqueue等事件处理功能封装成统一的接口
- 内置内存存储方式:
- Memcached使用预分配的内存池的方式,使用slab和大小不同的chunk来管理内存,Item根据大小选择合适的chunk存储,内存池的方式可以省去申请/释放内存的开销,并且能减小内存碎片产生
- 为了提高性能,memcached中保存的数据都存储在memcached内置的内存存储空间中
- 数据仅存在于内存中,因此重启memcached、重启操作系统会导致全部数据消失
- 内容容量达到指定值之后,就基于LRU(Least Recently Used)算法自动删除不使用的缓存
- memcached不互相通信的分布式
2,分布式:Magent
- Memcached代理服务软件
- 代理多台主Memcached服务器实现集群
- 配置主备Memcached服务器解决单点故障问题,主宕机后切到备机
3,PHPMemcacheAdmin
- Memcached管理后台,监控和Debug Memcached服务器
4,缓存预热