我是 ActiveMQ 技术的新用户,我在使用这项技术时遇到了一些问题。
我有以下情况:
- 我有一个在嵌入式(离线)ARM 设备中运行的软件,它在运行时将一组视频存档在可插拔硬盘上。
- 有时(一天 4-5 个事件),我必须将警报事件与这些视频相关联,并将警报排入持久队列。
- 我们必须每月一次提取硬盘并将其连接到另一个嵌入式在线 ARM 设备,该设备应通知 ActiveMQ 服务器有关离线 ARM 设备< 生成的警报/强>
现在我的问题是:如何将持久队列存储在硬盘上,以便离线 ARM 设备生成的事件可供在线 ARM 系统使用(在线和在线之间的唯一“连接”离线嵌入式设备是硬盘)?
请注意,我无法更改向在线服务器传输消息的方式,因为它不是我公司开发的系统。
最好的问候
乔瓦尼
最佳答案
听起来您想要一种“存储转发”消息传递模式。您可以将“离线”ActiveMQ 代理配置为尝试连接到“在线”ActiveMQ 代理。网络连接器将尝试以可配置的时间间隔进行连接,当它处于“在线”状态时,它将开始自动发送消息。
轻微的缺点是代理将尝试连接到远程代理(即使在离线时),因此您需要管理日志轮换或日志记录级别以适应。
寻找 static://网络连接器 uri
关于c++ - ActiveMq:持久队列和离线系统,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44627680/