查找缓存框架内部工作原理的最佳方法是查看其源代码。我找不到任何详细说明这些框架内部工作的权威文章。以下是将Ehcache与Memcache区分开来的几点。
- 像MemCache和EHcache这样的分布式缓存就像 Giant Hashmap 一样工作。通过分布式,这意味着缓存可以分布在多个服务器上,实际上将存储功能扩展到无限数量的对象。
- 虽然Ehcaceh和Memcached都显示为哈希图,但它们的工作方式却截然不同。
- Ehcache是通用的 Java Object 缓存,通常与Java Application一起用于缓存java对象。它通常用作缓存要求的应用程序的附加组件。
- Ehcache完全用Java编写,因此它是一个纯Java应用程序。
- Ehcache提供 RESTful API作为界面。
- Memcached是一个通用缓存,用于缓存任何类型的对象。
- 它是一个基于客户端服务器的方案。所以你有一个memcached服务器,它包含实际数据,还有客户端(几乎所有语言都有)。 Memcached服务器是用母语(C / C ++)编写的。
- 要与Java一起使用,它需要一个memcached客户端(spymemcached)
我知道我没有回答关于缓存框架内部工作的核心问题,但我提到的要点应该可以帮助您根据自己的要求选择其中一个。