对于Spring MVC,ehcache或spring缓存中的最佳缓存实践是什么?


问题内容

计划在基于Spring Web的应用程序中为静态数据实现缓存机制,有谁能解释哪个是最好的,以及它如何工作?

  • 高速缓存
  • 弹簧缓存

问题答案:

免责声明:我是 Terracotta / Software
AG的
雇员,Ehcache的维护者

Ehcache是一个JVM缓存库,以被用作Hibernate ORM的默认第二级缓存而闻名。

Spring缓存是在Spring
3.1中引入的,并带来了一些注解,例如@CachePut在Spring应用程序中定义缓存的使用。默认情况下,Spring缓存使用普通的Map,但是您可以将其配置为使用任何流行的缓存框架,包括Ehcache

从Spring
4.1开始,Spring缓存支持JSR-107,这是在JVM上进行缓存的标准。

这意味着您可以添加JSR-107缓存注释,然后选择您的缓存库(ehcache 2或3 /
guava /
caffeine /
):您与任何缓存供应商都没有关系,甚至与Spring也没有关系缓存注释!

这不错的博客文章,解释spring缓存注解和JSR-107注解之间的并行,如果你选择在spring启动应用程序使用Ehcache3,还有另一个有趣的博客文章,解释你如何将它集成到应用