首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在ehcache中拥有更多的可搜索属性会降低缓存的性能吗?

在ehcache中拥有更多的可搜索属性会降低缓存的性能吗?
EN

Stack Overflow用户
提问于 2015-09-12 09:27:19
回答 2查看 670关注 0票数 1

我正在做一个我们正在使用ehcache的项目。我们正在大量使用search,并且拥有我们正在使用的值的大约5-7个搜索属性。

所以,我想知道这么多的搜索属性会降低缓存的性能吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-09-14 11:48:51

在开放源码Ehcache中,搜索功能使用蛮力。这意味着搜索费用按以下方式支付:

  1. 插入缓存时,搜索子系统将确保属性值与配置的预期类型匹配。
  2. 在搜索时,您必须再次从映射中提取属性值--仅限于查询中使用的属性。

考虑到这一点,是的,属性的数量对put有直接的性能影响,但在get上没有影响。

票数 1
EN

Stack Overflow用户

发布于 2015-09-14 13:27:57

EhCache文档声明如下

在O(n) time.....The测试中执行的搜索操作显示了对10,000个条目缓存的4.6ms和对1,000,000条目缓存的427 ms的平均代表性查询的搜索性能。因此,独立实现适合于开发和测试。 当在生产中使用没有BigMemory的独立Ehcache时,建议只搜索小于100万元素的缓存。不同标准的表现各不相同。例如,以下是2000个元素缓存上的一些查询及其执行时间。(请注意,这些结果都比上面给出的时间更快,因为它们只执行一个标准)。

这里提到的两件重要的事情是--不同标准的性能是不同的,如果有一个标准还是多个标准是很重要的。尽管对性能的实际影响只能通过对用例进行基准测试才能找到--但文档表明它具有一定的效果。最好的方法就是自己做基准测试。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32537234

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档