项目 |
Memcache | Ehcache |
分布式 |
不彻底,集群默认不实现 |
支持 |
集群 |
可经过客户端实现 |
支持(默认是异步同步) |
持久化 |
可经过第三方应用实现,如sina研发的memcachedb,将cache的数据保存到[url=]Berkerly DB[/url] |
支持。持久化到本地硬盘,生成一个.data和.index文件。cache初始化时会自动查找这两个文件,将数据放入cache |
效率 |
高 |
高于Memcache |
容灾 |
可经过客户端实现。 |
支持 |
缓存数据方式 |
缓存在memcached server向系统申请的内存中 php |
能够缓存在内存(JVM中),也能够缓存在硬盘。经过CacheManager管理cache。多个CacheManager可配置在一个JVM内,CacheManager可管理多个cache。 java |
缓存过时移除策略 |
LRU python |
[url=]LRU([/url]默认),FIFO,LFU 缓存 |
缺点 |
功能不完善,相对于Ehcache效率低 服务器 |
只适用于java体系,只能用java编写客户端 异步 |
优势 |
简洁,灵活,全部支持socket的语言都能编写其客户端 socket |
效率高。功能强大。 分布式 |