我需要在一个拥有9台服务器的Web应用程序集群中实现Java缓存解决方案。我看到了Apache JCS,但它似乎已经过时了,你知道其他的开源解决方案吗?
更正一下,使用Terracotta的Ehcache做分布式缓存不需要商业许可证。Ehcache允许你在一个集群中只用几个节点,其中一个可以是TSA(如果我没记错的话)。
Memcache纯粹是一个缓存层,不具备磁盘持久化功能,而Terracotta的Ehcache具备这种功能。
当涉及到Java时,Terracotta的Ehcache位于Java堆之外,这使得你可以根据服务器内存大小拥有任意大的缓存。他们正在开发单个JVM,该JVM具有4TB的堆大小,完全没有垃圾收集。Memcache没有这种堆外特性。
缺点是,如果你的应用程序不是Java,Terracotta将需要很多工作——Terracotta主要基于Java。
我上周在JavaOne上见到了这些人,所以我从他们那里得到了很多有用的信息。