2

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

4

1 回答 1

3

查找缓存框架内部工作原理的最佳方法是查看其源代码。我找不到任何详细介绍这些框架的内部工作的权威文章。以下是 Ehcache 与 Memcache 的区别。

  • MemCache 和 EHcache 等分布式缓存的工作方式类似于Giant Hashmap。通过分布式,这意味着缓存可以分布在多个服务器上,实际上将存储能力扩展到无限数量的对象。
  • 尽管 Ehcaceh 和 Memcached 看起来都像一个 hashmap,但它们的工作方式却大不相同。
  • Ehcache 是通用Java 对象缓存,意思是通常与 Java 应用程序一起用于缓存 Java 对象。它通常用作应用程序的附加组件以满足缓存要求。
  • Ehcache 完全用 Java 编写,因此它是一个纯 Java 应用程序。
  • Ehcache 提供RESTful API 作为接口。
  • Memcached 是用于缓存任何类型对象的通用缓存。
  • 它是一个基于客户端-服务器的方案。因此,您有一个保存实际数据的 memcached 服务器,并且有客户端(几乎所有语言都可用)。Memcached 服务器是用本地语言 (C/C++) 编写的。
  • 为了与 Java 一起使用,它需要一个 memcached 客户端 ( spymemcached )

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

于 2013-08-05T13:46:09.173 回答