问题标签 [caffeine-cache]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
98 浏览

caffeine-cache - 如何使咖啡因异步?

我这样使用它:cacheManager 是自动连接的:cacheManager.getCache("cacheKey").get(123)

如何将其更改为异步?

0 投票
1 回答
112 浏览

java - 如何从 application.yml 获取设置图?

这是我的 application.yml 配置:

我需要对它们进行分组,这就是我添加另一部分设置的原因。这是我的配置类:

CacheProperties已经有"spring.cache"前缀,所以我只添加了我的组的名称。我的地图中仍然出现“null”。我的错误是什么?

0 投票
0 回答
49 浏览

java - 加载缓存与请求缓存?

加载缓存请求缓存有什么区别?

我们什么时候应该使用这两种缓存?

0 投票
0 回答
710 浏览

java - 带有 Spring Boot 的咖啡因:如何缓存对象列表、使用 id 更新/删除对象以及将新对象插入缓存

我是 Caffeine 和 Spring Boot 的新手。我正在尝试找到缓存对象列表的解决方案。数据库事务需要 3 秒来加载列表,所以我希望使用 Caffeine 缓存结果集。要单独缓存每个项目,我遵循以下方法,但它似乎不起作用。

当服务器启动时,getAllItemsOnStartUp()必须运行并填充缓存。应用程序调用getAllItems()以检索列表,预计会在此处使用缓存,但每次应用程序从数据库获取数据需要 3 秒。

0 投票
0 回答
25 浏览

java - 从 SpringBoot 缓存返回对象时得到通知

我想知道是否有一种内置方法可以知道是否从 SpringBoot 缓存返回对象。我正在使用 SpringBoot 2.2.2 和 Caffeine 2.8.0。我正在创建一个咖啡因豆,如下所示:

我注意到构建器有一个 removeListener 方法。我需要的是 objectServedFromCacheListener 之类的东西。换句话说,我希望在提供对象或从缓存返回对象时得到通知。鉴于不存在这样的方法,我如何知道何时从缓存中返回对象?我可以使用服务方法调用时间,预计真正的调用会花费几秒钟,如果方法在不到一秒的时间内返回,则意味着该对象是从缓存中返回的。但这似乎很尴尬。我有一个内部分析机制,基于它我可以确定是否调用了服务方法。但我期待有一个内置的方式。在那儿?

0 投票
0 回答
88 浏览

java - 咖啡因缓存 - 为数据库中无法访问的值放入缓存键?

我的咖啡因缓存完美运行。但是,我想提高它的性能。

事实上,我想从缓存中加载的许多键都不在数据库中。有没有办法让咖啡因将所有这些无法访问的键放在地图中,这样当我再次请求咖啡因缓存时,咖啡因不会再次请求数据库?

例子:

有没有办法/选项来做到这一点?

0 投票
0 回答
25 浏览

spring-boot - 我不明白为什么没有创建缓存

我添加了所有依赖项,使用 bean 定义创建配置类并将属性添加到 application.yaml。我以这种方式定义了 bean,因为我需要在我的应用程序中使用 javax.cache.CacheManager。

请帮助我理解为什么没有创建具有给定 ID 的缓存。

0 投票
1 回答
265 浏览

java - 如何使条目无效并从咖啡因缓存返回其值?

我正在尝试手动从咖啡因缓存中删除一个条目。我有两次尝试,但我怀疑它们都存在一些问题:

这个似乎可能会受到竞争条件的影响。

这似乎绕过了缓存本身的方法,所以我不确定是否会产生奇怪的副作用。

有没有标准的方法来做到这一点或我在这里缺少的缓存方法?

0 投票
1 回答
599 浏览

java - 结合调度器和执行器服务的咖啡因

我在以下配置中使用咖啡因:

我是否会正确假设该onRemoval方法将在newWorkStealingPool(15)ForkJoinPool 上执行,并且调度程序只会被调用以查找需要被驱逐的过期条目?

这意味着它会像这样:

  1. 调用单线程调度程序(每 ~ 1 秒)
  2. 找到所有要驱逐的过期条目
  3. newWorkStealingPool(15)为缓存构建器中定义的每个逐出条目执行onRemoval ?

我没有找到解释这种行为的文档,所以我在这里问

肿瘤坏死因子

0 投票
1 回答
177 浏览

java - 使用springboot和Caffeine缓存可以存储多少缓存?

我们使用 Springboot 开发了一个应用程序,并使用 Springboot 缓存以及 Caffeine 缓存来减少 DB 调用并提高性能,但是我们认为缓存大小可能会出现问题,所以请帮助我们知道多少缓存可以正常工作?

笔记 :

  1. 服务器 RAM 大小为 2 GB。
  2. 使用 Kubernetes 和 Docker
  3. 它是一个小型的 Rest 端点应用程序,但有一些复杂的任务