Ehcache和MemCached区别及应用
2024-08-22 12:42:24
ehcache是纯Java编写的,通信是通过RMI方式,适用于基于java技术的项目。
memcached服务器端是c编写的,客户端有多个语言的实现,如c,PHP(淘宝,sina等各大门户网站),Python(豆瓣网), java(Xmemcached,spymemcached)。memcached服务器端是使用文本或者二进制通信的。
项目 | Memcache | Ehcache |
分布式 | 不完全,集群默认不实现 | 支持 |
集群 | 可通过客户端实现 | 支持(默认是异步同步) |
持久化 | 可通过第三方应用实现,如sina研发的memcachedb,将cache的数据保存到[url=]Berkerly DB[/url] | 支持。持久化到本地硬盘,生成一个.data和.index文件。cache初始化时会自动查找这两个文件,将数据放入cache |
效率 | 高 | 高于Memcache |
容灾 | 可通过客户端实现。 | 支持 |
缓存数据方式 | 缓存在memcached server向系统申请的内存中 | 可以缓存在内存(JVM中),也可以缓存在硬盘。通过CacheManager管理cache。多个CacheManager可配置在一个JVM内,CacheManager可管理多个cache。 |
缓存过期移除策略 | LRU | LRU(默认),FIFO,LFU |
缺点 | 功能不完善,相对于Ehcache效率低 | 只适用于java体系,只能用java编写客户端 |
优点 | 简洁,灵活,所有支持socket的语言都能编写其客户端 | 效率高。功能强大。 |
最新文章
- 2016huasacm暑假集训训练三 B-Frogger
- LeetCode题解-----Maximum Gap
- 《ASP.NET1200例》在DataList里编辑和删除数据
- BZOJ 2038
- 关于Noise and Error主题的一些小知识
- 提高你的Java代码质量吧:少用静态导入
- iOS: 学习笔记, 添加一个带界面约束的控制器
- self-introduction
- 获取枚举Name,Value,Description两种方法
- 与《YII框架》不得不说的故事—5篇目录
- CentOS下mysql最大连接数设置 1040 too many connection
- UIImage分类:返回一个可以拉伸的图片
- 《JAVA与模式》之门面模式
- ACM-ICPC 2018 徐州赛区网络预赛 F Features Track(STL模拟)
- 每天进步一点点——mysql——mysqlbinlog
- 【教程】Win7-64位安装OpenSSL详细过程
- [转载]linux中sed的用法
- Windows 下安装mysql总结
- Zookeeper在Centos7上搭建单节点应用
- real-Time Correlative Scan Matching
热门文章
- UICamera
- Asp.net 使用Neatupload 第三方控件上传大文件,在IIS7上无法正常工作解决
- 解决svn Key usage violation in certificate has been detected
- RGB颜色核对的网址
- 《Android Studio实用指南》7.1 AndroidStudio代码检查工具概述
- 关于select Count()的使用和性能问题
- python中fork()函数生成子进程分析-乾颐堂
- 1.单机部署hadoop测试环境
- git的使用和一些命令
- no getter for property named 'power_state