【发布时间】:2019-05-05 07:27:33
【问题描述】:
我正在尝试实现 ActiveMQ Artemis。 Artemis 是 ActiveMQ 的一部分吗?
我正在尝试执行定期任务delay-and-schedule-message-delivery ActiveMQ,但唯一有效的是延迟scheduled-messages。文档中有关于核心API的说明:
还可以使用核心 API 发送预定消息,方法是在发送前在核心消息上设置相同的属性。
所以这可能并不意味着我可以设置 ActiveMQ 属性。
我需要任何具有这些功能的消息队列:
- 重复任务(ActiveMQ“经典”)
- 重复任务检测 (ActiveMQ Artemis)
- 数据持久性
- 消息修改 - 从队列中删除或更改重复延迟
- 弹簧集成
【问题讨论】:
-
“重复任务”是什么意思?消息代理不能替代
cron。 -
我需要一些服务,我将在其中存储许多简单的任务(数千、数百万),我需要定期运行的每个任务(5s、1m、5m 等)。这些任务将在分布式环境中运行,我们将在其中等待消息的工作人员。 Cron 在这个问题上没用,因为我们需要更离散地调度任务(以秒为单位进行计划)。
-
另外,我不想在完成工作后将每个任务都添加到队列中(重新调度),因为大多数任务会以静态周期重复,并且存在潜在风险,该任务不会被重新安排(任务失败,服务断开......)。我认为我可以使用这样的东西:activemq.apache.org/delay-and-schedule-message-delivery.html
-
我根据您的回复更新了我的答案。
-
谢谢。我们将尝试仅使用石英调度程序而不是任何队列。
标签: scheduled-tasks activemq-artemis