根据这些 微基准测试 ,发现在读和写操作方面,Caffeine 比 Guava Cache 更快。
Caffeine 实现的秘密是什么?它与 Guava Cache 有何不同?
在定时过期的情况下,Caffeine是否使用定时执行程序在后台执行适当的维护操作?
Caffeine 实现的秘密是什么?它与 Guava Cache 有何不同?
在定时过期的情况下,Caffeine是否使用定时执行程序在后台执行适当的维护操作?
ConcurrentLinkedHashMap
和MapMaker
是同时编写的,CLHM的性能与Caffeine相似。 我认为差异在于设计师偏爱和优化的场景,这影响了其他功能的实现方式。 有一些简单的方法可以让Guava具备类似的性能特征,但没有内部冠军来推动这一点(尤其是Caffeine作为首选替代品的情况下更是如此)。