我想在我的应用程序中使用基本的Ehcache功能(在内存缓存中使用TTL)。 最新2.9.0 ehcache maven依赖的大小为8.7Mb。 但在ehcache website中说"小脚印"。
他们使用的是哪个软件包(非常旧的版本?)。为什么现在这么大?
答案 0 :(得分:1)
我无法回答为什么EHCache如此之大,但我可以回答一个问题,即在内存Java缓存中使用TTL(又称到期)实现轻量级高效和高性能。请查看cache2k。
免责声明一:我是cache2k的作者。
免责声明二:从版本0.19到0.20,产品的尺寸大约为3倍,现在计算为251kb(cache2k-core)。这样做的原因是包含了很多代码用于持久性和堆外支持。在某些时候,我会将其删除为一个单独的模块,因为并不总是需要(例如在Android上)。
如果您对cache2k有其他疑问,只需将它们添加到堆栈溢出。
如果cache2k不是你的东西(它仍然在发展,需要更多文档),我认为轻量级缓存的标准选择是Google Guava。使用Guava会添加一个Jar,其中包含许多缓存不需要的东西,但是,大多数产品都将Guava作为依赖。
答案 1 :(得分:1)
该网站对版本2.2.3
提出索赔,但仍然如此。
但事实上,随着时间的推移,Ehcache jar的大小已经增长,看起来该网站尚未更新该信息。
版本2.7.0作为单个jar发布,包括其内部依赖项,而不是net.sf.ehcache:ehcache
只是一个pom拉入依赖项。
增长的一个原因是增加的监控功能,可以通过ReST调用访问。不幸的是,这也是缺乏文档的一点。
如果您对该主题感兴趣,请查看以下内容:
net.sf.ehcache.config.ManagementRESTServiceConfiguration
用于启用/配置ReST服务,net.sf.ehcache.management.resource.services
中的包management-ehcache-v2
模块。与此同时,工作开始于Ehcache 3计划恢复小占地面积"选项。