首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >发布/订阅MessageBroker + MQ基础知识

发布/订阅MessageBroker + MQ基础知识
EN

Stack Overflow用户
提问于 2013-01-16 21:05:39
回答 1查看 4.6K关注 0票数 0

在使用message broker 7.0和MQ 7.0开发简单的发布/订阅流方面,我将非常感谢一些帮助。

我的流应该接受某个没有头部的消息,根据字段(process,如果值为"yes")对其进行过滤,然后将正文发布到消息的节点中列出的所有队列中

代码语言:javascript
复制
<pub>
  <header>
       <topics>
           <topic> Topic1  </topic>
           <topic> Topic2  </topic>
       </topics>

       <properties>
          <property>
                          <publish>yes</publish>
                  </property>     
           </properties>
   </header>

   <body>  
      <a>
         <b>The publication </b>
      </a>
   </body> 
</pub>

这是我的流程:

我在MQ中注册了一个主题和一个订阅,但我几乎不知道下一步该做什么。我使用RFHUtil测试点对点应用程序,但不知道如何在开发发布-订阅时使用它。

问题: 1.只使用一个简单的队列作为发布者是否正确(在MQ输入中,我只设置了" in ",MQ中的队列) 2.如何在此流程中注册订阅者/多个订阅者?订阅点是什么?

这只是一个学习任务。

欢迎任何帮助!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-01-17 00:29:24

对于正常的pub-sub流,您可以拥有类似以下内容的内容:

将MQInput节点的队列名称设置为您的输入队列。让我们将其命名为"inputQ“。

现在,MQInput节点已经从"inputQ“中读取了消息,并将其传递到计算节点。

在计算节点中,在将消息传递到发布节点之前,您需要将消息类型设置为发布,还需要设置主题名称。

你也可以使用下面的代码来实现同样的效果:

代码语言:javascript
复制
SET OutputRoot.MQRFH2.psc.Command = 'Publish';
SET OutputRoot.MQRFH2.psc.Topic = 'YourTopicString';

“如何在此流程中注册订阅者/多个订阅者?”

我假设你的问题是“如何从相同的流程发布具有不同主题的消息”。

现在假设您有多个主题要从同一个流中发布。你不能一下子做完所有的事情。一条消息可以有一个主题。

但是,您可以实现如下所示(假设您有3个主题):

代码语言:javascript
复制
SET OutputRoot.MQRFH2.psc.Command = 'Publish';
SET OutputRoot.MQRFH2.psc.Topic = 'Topic1';
PROPAGATE TO TERMINAL 'out' DELETE NONE;
SET OutputRoot.MQRFH2.psc.Topic = 'Topic2';
PROPAGATE TO TERMINAL 'out' DELETE NONE;
SET OutputRoot.MQRFH2.psc.Topic = 'Topic3';
PROPAGATE TO TERMINAL 'out' DELETE NONE;
RETURN FALSE;

但是,如果您的需求是发布单个主题,但多个队列应该可以处理它,那么它就更简单了。

您只需要为主题的所有这些队列创建订阅。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14359173

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档