我计划为基于Spring的Web应用程序实现静态数据缓存机制,请问有人能解释哪个是最好的,并且它是如何工作的?
- EhCache
- Spring Cache
您可以考虑使用EhCache或Spring Cache。
我计划为基于Spring的Web应用程序实现静态数据缓存机制,请问有人能解释哪个是最好的,并且它是如何工作的?
您可以考虑使用EhCache或Spring Cache。
声明:我是Terracotta / Software AG的员工,他们是Ehcache的维护者
Ehcache是一个JVM缓存库,因作为Hibernate ORM默认的第二级缓存而闻名
Spring cache在Spring 3.1中引入,并带来了注释,如@CachePut
,以定义在Spring应用程序中使用缓存的方式;默认情况下,Spring cache使用普通Map,但您可以将其配置为使用任何流行的缓存框架,包括Ehcache
自Spring 4.1以来,Spring cache支持JSR-107,这是JVM上的缓存标准。
这意味着,您可以添加JSR-107缓存注释,然后选择您的缓存库(ehcache 2或3 / guava / caffeine / 等等):您不会被绑定到任何缓存供应商,甚至不会被绑定到Spring缓存注释!
这篇不错的博客文章解释了Spring缓存注释和JSR-107注释之间的相似之处,如果您选择在Spring Boot应用程序中使用Ehcache3,则还有另一篇有趣的博客文章解释如何将其集成到您的应用程序中。
ehcache.xml
。是否可能完全摆脱xml文件,并且只使用Java配置来实现ehcache 3.8和Spring Boot 2.1(或更高版本)? - Iwo KucharskiEhcache3 支持 JSR 107
对于 Ehcache2,您可以使用此实现
https://github.com/ehcache/ehcache-jcache/tree/master/ehcache-jcache