0

对于一个月执行一次的任务,是否需要设置LockAtMostFor和LockAtMostFor的值,执行时间是几分钟,有几个节点有一个正在运行的服务。将值暴露给 的正确性如何 lockAtLeastFor = "PT1H" lockAtMostFor = "15m"

4

2 回答 2

0

如果您希望任务仅由一个节点运行,则需要添加 lockAtLeastFor 和 lockAtMostFor 。

lockAtLeastFor :应该是您的任务完成的值。

lockAtMostFor : 应该是 lockAtLeastFor + 一些缓冲时间。

如果 lockAtLeastFor 太小,那么相同的任务可以被其他节点接走。(作业将在多个节点上运行,而不是在一个节点上)

如果 lockAtMostFor 未设置或设置为高值并且您的节点在获取锁后死亡
没有其他节点可以获取锁。

于 2021-05-27T10:41:30.087 回答
0

您不必设置lockAtLeastFor. 另一方面lockAtMostFor,必须设置以防执行任务的节点死亡。在那之后,锁会自动释放。

于 2021-05-29T11:04:04.487 回答