我将EHCache用作应用程序的Hibernate DAO层的二级缓存。为了实现分布式缓存,我计划包括Terracotta Server。
最近,我开始了解Terracotta的另一种产品Big Memory

关于此的几个问题:


大内存如何在Terracotta / EhCache上提供帮助?
它会补充Terracotta / EhCache的实现吗?
值得一试吗?


我在Java EE应用程序上工作,该应用程序具有Flex UI,Hibernate ORM层,SQL Server 2008和Tomcat应用程序服务器。

最佳答案

大内存如何在Terracotta / EhCache上提供帮助?

我了解BigMemory的方式是,它在JVM外部的内存上存储了大量数据。如果您要缓存很多东西,这将很有帮助,以至于GC时间像explained here这样会影响您的性能。

如果您的东西适合缓存,并且您没有遇到这种速度变慢的情况,我想像heap within JVM would be faster than outside JVM那样,大内存甚至可以使您的速度比兵马俑慢。至少,它不会有太大改善。

它会补充Terracotta / EhCache的实现吗?

基于documentation,与ehcache / terracotta的集成应该是无缝的。所以,是的。

值得一试吗?

我将首先使用Terracotta,测量内存使用量,GC时间和影响,如果Big Memory似乎可以提供更多帮助,那么可以肯定。如果一切正常,则没有理由添加额外的内容。

09-25 16:22