【发布时间】:2021-07-24 07:32:59
【问题描述】:
我想调用 repository.findbyId(id) 直到在几秒钟内得到结果。
例如:选择 id =1 连续 25 秒的员工详细信息。如果我们在第 15 秒得到结果,我们必须停止调用。
我尝试使用 @Retryable,但它不适合我的情况。
我们可以通过 Awaitility.await().atMost(20, TimeUnit.SECONDS).pollInterval(50, TimeUnit.MILLISECONDS) 来实现 .untilAsserted()}
但是,我们只能使用 Awaitility 来测试断言。 Spring Boot 中是否有任何其他选项可以替代 Awaitility?
【问题讨论】:
-
为什么你不能使用Awaitility?我刚刚为我的 Boot 应用程序部署了一个更新,将其拉入运行时。
-
这是一个非常奇怪的用例。 2 秒在 Cassandra 中是永恒的。我真的很好奇你为什么需要等待。也许如果您提供有关您要解决的问题的一些背景知识,我们也许可以给出更好的答案。干杯!
-
@chrylis 根据代码标准,Awaitility 仅用于测试目的。开发方面我们需要找到一些替代方案
标签: java spring spring-boot cassandra spring-data-jpa