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