memcached和Ehcache究竟是如何在服务器中存储数据的?

时间:2013-08-03 12:41:03

标签: java spring

在Java spring中,memcached和Ehcache究竟是如何将数据存储在服务器内存中的?一个简单的解释或比较会有所帮助。

1 个答案:

答案 0 :(得分:2)

查找缓存框架内部工作原理的最佳方法是查看其源代码。我找不到任何详细说明这些框架内部工作的权威文章。以下是将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

我知道我没有回答关于缓存框架内部工作的核心问题,但我提到的要点应该可以帮助您根据自己的要求选择其中一个。