我正在尝试决定在我的项目中使用这两个中的哪一个:guava cache或ehcache。寻找轻量级服务级别缓存解决方案。 我搜索了一些基准测试,但找不到任何基准测试。
如果您有方便的基准,请在此处发布。
干杯。
答案 0 :(得分:21)
基准测试是一项很滑的业务。它是hard to get it right和easy to fake。除非你的应用程序会挤出金属的每个CPU周期,否则你不应该担心性能:Ehcache和guava缓存都足以满足普通项目的需要。
您应该注意的事项是API和功能。例如,Guava缓存不能用作二级Hibernate缓存(即至少开箱即用)。 OTOH Ehcache在API和功能爬行方面变得有点胖,但这些都是主观的。
回到主题,Guava缓存最初来自一个单独的项目concurrentlinkedhashmap,我相信,不再受支持只是一个单人项目而丢失了一点动力(见本文下面的评论)。尽管如此,旧的项目页面仍然有一些基准测试证明ConcurrentHashMap
(现在的番石榴缓存)性能接近ConcurrentLinkedHashMap
。我希望它没有恶化。