问题标签 [shedlock]

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 投票
2 回答
48 浏览

spring-cloud-function - 带有 Spring Cloud 功能 @PollableBean 的 Shedlock

我最近将我们几乎所有服务的实现都切换到了 Spring Cloud 功能,这自然也意味着所有预定的作业都已转换为供应商,例如从这个

对此

正如您所看到的,这里唯一的障碍是实现某种分布式锁机制,以防止那些被PollableBean注释Suppliers的对象在所有服务实例上启动。

我曾考虑将计划的作业恢复到它们所在的位置并StreamBridge用来解决这个问题,但这听起来更像是一个黑客而不是一个解决方案。

另一种思路是将供应商转为Function接口类型,通过普通的带@Scheduled注解的方法调用,不过这个好像和Spring cloud的功能也不好设置。

有任何想法吗?

0 投票
1 回答
17 浏览

spring-boot - SpringBoot shedlock 无时间间隔

我正在运行带有 2 个实例的 Spring Boot 应用程序。在这里,我将使用调度程序来运行我的应用程序。为了避免调度程序不在使用 schlock 的同时在两个实例中运行。但是 schlock 我不得不提到 atleastfor 或 atmostfor 。我的问题我是否不想根据时间释放锁定,因为因为使用批处理应用程序和休息调用不知道我的调度程序何时完成进程。请提供任何建议一次运行我的调度程序一个实例而没有时间限制。

0 投票
0 回答
31 浏览

java - Spring boot shedlock 在多个实例上运行两个任务

我们开始使用 ShedLock,每天需要运行两个任务。因此,我在一个类中定义了两个具有不同锁名称的任务(以便它们可以同时运行)。我为展位作业设置了相同的执行开始时间。但由于某种原因,这些任务是在两个实例上执行的(我们总共有 3 个实例)。在 tst 上它运行良好(可能是因为数据集较小)。我试图理解为什么。

这是我的课:

锁提供者:

以下是有关任务开始和结束的信息: