对于弹簧 MVC,ehcache 或 spring 缓存中的最佳缓存实践是什么?
2022-09-03 00:29:49
计划在基于spring Web的应用程序中实现静态数据的缓存机制,任何人都可以解释哪个是最好的以及它是如何工作的吗?
- 埃赫卡什
- 弹簧缓存
计划在基于spring Web的应用程序中实现静态数据的缓存机制,任何人都可以解释哪个是最好的以及它是如何工作的吗?
免责声明 : 我是Terracotta / Software AG员工,Ehcache的维护者
Ehcache是一个JVM缓存库,以用作Hibernate ORM的默认第二级缓存而闻名
Spring缓存是在Spring 3.1中引入的,并带来了注释,例如在Spring应用程序中定义缓存的用途;默认情况下,Spring缓存使用普通Map,但您可以将其配置为使用任何流行的缓存框架,包括Ehcache。@CachePut
从 Spring 4.1 开始,Spring 缓存支持 JSR-107,这是在 JVM 上进行缓存的标准。
这意味着,您可以添加JSR-107缓存注释,然后选择您的缓存库(ehcache 2或3 / 番石榴/ 咖啡因/等):您不受任何缓存供应商的约束,甚至没有绑定到Spring缓存注释!
有一篇很好的博客文章解释了Spring缓存注释和JSR-107注释之间的相似之处,如果您选择在spring boot应用程序中使用Ehcache3,则还有另一篇有趣的博客文章解释您如何将其集成到应用程序中
Ehcache3 支持 JSR 107
对于 Ehcache2,您可以使用此实现
https://github.com/ehcache/ehcache-jcache/tree/master/ehcache-jcache