Java的最佳缓存框架

时间:2010-06-11 11:34:14

标签: java caching

我需要在java中为具有Web应用程序的9台服务器的集群实现缓存解决方案。我看到了apache JCS,看起来很旧,你知道另一个开源解决方案吗?

4 个答案:

答案 0 :(得分:23)

您可以尝试查看Terracotta框架 或者您可以使用分布式Ehcache

答案 1 :(得分:7)

我认为为了使用分布式EhCache,您需要商业Terracotta许可证。

另一种选择是memCached(参见:http://memcached.org),它不需要商业许可,而且广泛用于YouTube,LiveJournal,Flikr,维基百科等高流量网站......

关于memcached的好文章:

使用Memcached实现Java企业性能,第1部分:体系结构和设置 http://www.javaworld.com/javaworld/jw-04-2012/120418-memcached-for-java-enterprise-performance.html

使用Memcached实现Java企业性能,第2部分:数据库驱动的Web应用程序 http://www.javaworld.com/javaworld/jw-05-2012/120515-memcached-for-java-enterprise-performance-2.html

答案 2 :(得分:2)

答案 3 :(得分:2)

  1. 更正,您不需要商业许可证来使用Terracotta的Ehcache进行分布式缓存。 Ehcache允许你只在群集中做几个节点,如果我没记错的话,其中一个就是TSA。

  2. Memcache纯粹是一个不依赖于磁盘的缓存层,Terracotta的Ehcache就是。

  3. 至于Java时,Terracotta的Ehcache不在jave堆中,这可以让你根据服务器的内存量拥有所需的缓存。他们正在使用具有4TB堆大小且没有垃圾收集的单个JVM。 Memcache根本没有这种关闭堆功能。

    下行,如果您的应用不是Java,Terracotta将会做很多工作 - Terracotta主要是基于Java的。

    上周我在JavaOne上遇到过这些人,所以我从他们那里得到了很多好消息。