【问题标题】:Message queue with restriction on read具有读取限制的消息队列
【发布时间】:2017-01-17 12:34:29
【问题描述】:

我有以下任务,涉及到 ibm 消息队列:

存在从输入队列 Q1 获取消息并将消息放入 Q2 的应用程序(JMS 客户端)。有几个应用程序客户端将消息发送到 Q1。客户端为每条消息指定相关 id。应用程序从 Q1 收到的消息中检索 id,创建新的输出消息,添加检索到的 id 并将消息放入 Q2。然后每个客户端根据相关 id 只检索自己的消息。

我的问题是:

如果客户端没有指定任何 id,他会从队列中读取所有消息。我想要一个限制,即在未指定相关 ID 时禁止读取队列。

这是否可以仅使用 ibm 消息队列来完成? 如果没有其他建议。

【问题讨论】:

    标签: java jms ibm-mq


    【解决方案1】:

    您是否考虑过为回复队列(Q2)使用临时队列?在这种模式下,每个应用程序都会创建一个临时队列供自己使用。所有应用程序都放到 Q1 并将 MQMD 中的 ReplyToQ 设置为其临时队列的名称。

    在 Q1 上处理消息的应用程序将响应放入指定的 ReplyToQ,而不是将它们全部放入具有给定相关 ID 的 Q2。

    这种情况应该避免错误的应用程序意外地使用队列中不适合他们的消息。

    【讨论】:

      猜你喜欢
      • 2011-04-27
      • 1970-01-01
      • 2014-10-28
      • 2019-09-27
      • 1970-01-01
      • 2021-03-11
      • 2012-09-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多