【发布时间】:2019-04-25 13:47:11
【问题描述】:
要求:
在我的项目中(在分布式环境中运行),我们要求将作业安排在固定时间,初始延迟为 1 分钟,如果作业执行失败,它将重试,并且最多可以重试 10 次每个之间有 2 分钟的延迟。
我们可以实现相同目标的工具:
我可以使用 spring-retry 实现同样需要的功能。但是,有多个容器可用(分布式环境)。 Rabbit-MQ、Amazon-sqs、Redis-quartz 等工具支持此功能。但我不确定哪个更适合springboot。
考虑因素:
以下是选择正确工具时需要考虑的事项:
分布式环境
一致性
容错
易于配置
异步处理
问题
基本上我正在寻找类似于 Resqueue 和 sidekiq ruby 实现等效于 Java(springBoot) 的东西。有没有人在他们的应用程序中实现了相同的功能?如果是这样,什么是更好的选择/方式提供的利弊。欢迎提出建议。
【问题讨论】:
标签: java spring spring-boot job-scheduling job-queue