gpt4 book ai didi

java - 使用 JCache 配置 API 限制缓存大小

转载 作者:塔克拉玛干 更新时间:2023-11-01 23:07:25 24 4
gpt4 key购买 nike

我正在使用 JCache API 在我的应用程序中配置缓存,该应用程序将 spring 缓存与 Ehcache 3 结合使用。

cacheManager.createCache("users", new MutableConfiguration<String, User>()
.setStoreByValue(false)
.setManagementEnabled(true)
.setStatisticsEnabled(true)
.setExpiryPolicyFactory(CreatedExpiryPolicy.factoryOf(Duration.TEN_MINUTES)));

如何将缓存大小限制为 50 个条目?通过 Ehcache XML 配置很容易做到这一点,但如果有一种方法可以使用 JCache 配置 API 来控制它,我更愿意使用它。

最佳答案

不幸的是,限制大小超出了标准的范围。为此,您始终需要特定于供应商的配置。

我自己对此并不满意,并且在一些用例中我想在程序中使用标准 API 设置大小限制。但是,也有正当理由将其排除在标准之外:

大小限制是什么意思?缓存需要遵循哪些确切的语义?是否可以为所有缓存定义有用的语义?例如,对于分布式缓存,根本很难确定缓存中的条目数。

有不同的概念来限制缓存大小。一些缓存允许设置字节大小限制。

对于非平凡的应用程序,您不想在代码中编写大小。大小是配置,应该在某个独立且易于管理的地方。外部配置也不在标准范围内。众说纷纭,没有标准的配置方式。

关于java - 使用 JCache 配置 API 限制缓存大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37289599/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com