cron - 如何找到 cron 的 ActiveMQ 调度时间
问题描述
我们正在使用 ActiveMQ 计划消息功能来触发事件并按时处理。如果 cron 安排在每天 00:00:00,则该事件的 brokerInTime 类似于 00:01:00。这不是准确的时间。根据 cron 的数量和发布的消息数量以及使用的底层框,我知道 brokerInTime/brokerOutTime 会有延迟。
我们有一个要求,在处理这些消息时,我们需要确切的调度时间(上例中的 2 月 21 日 00:00:00),而不是它实际被代理接收或分派的时间。
activeMQ/JMS 是否有任何属性可以让我们安排应该触发 cron 的时间?
谢谢。
解决方案
没有代理可以应用的属性,OpenWire 协议仅定义了 BrokerInTime 值,该值将反映消息到达队列的时间。调度程序尽最大努力处理调度的消息,但不被视为实时事件源。JMS 1.1 根本没有计划消息的概念,JMS 2.0 API 也没有为这种低级细节定义特定字段。
推荐阅读
- windbg - 对 64 位和 32 位 windbg 扩展使用相同的名称
- c# - 通过反射异步获取字段
- javascript - 如何在threejs中执行表面选择
- mongodb - 如何在有 3 个 Web 服务器用于负载平衡的情况下设置 mongodb 复制?
- php - 检查多个值是否重复php mysql
- regex - IF语句中的bash匹配正则表达式
- c# - 如何使用 ADAL 库向 ADFS 中的身份令牌添加更多声明?
- git - 如何在本地管理 git lfs 文件(如果可能,在与普通 git 文件相同的目录中)
- c# - 在同一页面上调用多个用户控件实例一次的用户控件方法
- c# - 在 C# 中运行带参数的 DOS 命令