jms - 根据到期时间(生存时间)将消息从一个 IBM MQ 队列移动到另一个 MQ 队列
问题描述
我有一个以伪同步方式使用 IBM MQ 的应用程序。我有请求 Q 和响应 Q。这将通过服务调用。现在我的服务有一个超时时间来显示响应。但实际响应也可以在超时后推送到响应 Q。现在我想将所有延迟的消息(超时)移动到单独的消息 Q 中,以便它们可以被不同的进程使用。
这可以通过按时间设置来实现吗?IBM MQ 中是否有任何方法可用于此类移动。请参考下图的场景。
解决方案
不要使用时间来生存,因为消息会过期并被删除——除非那是你想要的。从您的描述/图片中,听起来您希望另一个应用程序来处理延迟响应。
MQ 中没有任何内容可以将早于“x”秒/分钟的消息移动到另一个队列。你需要编写一个程序来做到这一点。如果您编写程序,请确保在工作单元下进行移动。
有几个商业程序可以做到这一点:(1)GUI 程序:MQ Visual Edit和(2)命令行(shell):MQ Batch Toolkit。
推荐阅读
- r - 通过改变第一列中的值来拆分 data.frame
- wpf - 在一行语法中使用参数绑定转换器
- python - while 循环中的多个输入,以及 Python 中的 try-except 块
- prometheus - 有没有什么方法可以使用 prometheus 指标根据 CPU 内核来表示 POD CPU 使用率
- c# - 遍历 BehaviorSubject<> 并设置对象的 prop
- c# - Unity C#:跨定义路径移动对象的问题
- android - 如何在 addOnCompleteListener Firebase 上返回值?
- optaplanner - OptaPlanner Project Job Scheduling 示例数据说明
- javascript - 如何在单击按钮时向 cookie 值添加 +1
- node.js - Discord.js:无法读取未定义的属性“类型”