Jms 一个TIBCO队列上的不同消息类型(XML)?

Jms 一个TIBCO队列上的不同消息类型(XML)?,jms,ibm-mq,tibco-ems,Jms,Ibm Mq,Tibco Ems,我正在尝试实现一个应用程序(Java),它将通过TIBCO EMS订阅来自其他不同应用程序的不同消息类型(XMLs)。每种消息类型都有特定的用途。我认为在我的应用程序中应该有多个具有多个订阅者的队列,但是,TIBCO guy坚持认为应该只有一个队列,所有这些消息都将在其中发布,我将有一个订阅者,然后订阅者应该具有基于接收到的XML的不同任务的逻辑 哪种方法更好?一个有多个队列和订阅者,还是一个队列和一个订阅者?请让我知道选择的原因 谢谢 -Naveen一般来说,如果同一个应用程序正在读取所有消息

我正在尝试实现一个应用程序(Java),它将通过TIBCO EMS订阅来自其他不同应用程序的不同消息类型(XMLs)。每种消息类型都有特定的用途。我认为在我的应用程序中应该有多个具有多个订阅者的队列,但是,TIBCO guy坚持认为应该只有一个队列,所有这些消息都将在其中发布,我将有一个订阅者,然后订阅者应该具有基于接收到的XML的不同任务的逻辑

哪种方法更好?一个有多个队列和订阅者,还是一个队列和一个订阅者?请让我知道选择的原因

谢谢


-Naveen

一般来说,如果同一个应用程序正在读取所有消息,那么该应用程序使用一个输入队列而不是多个输入队列会更干净。如果使用多个队列,那么应用程序将需要有逻辑来知道处理队列的顺序等等。通过一个输入队列,消息传递系统可以处理消息的顺序-无论是FIFO还是按优先级等,应用程序只需读取下一条消息并对其进行处理。

通常,如果同一应用程序正在读取所有消息,对于该应用程序来说,使用单个输入队列而不是多个输入队列要干净得多。如果使用多个队列,那么应用程序将需要有逻辑来知道处理队列的顺序等等。通过一个输入队列,消息传递系统可以处理消息的顺序-无论是FIFO还是按优先级等,应用程序只需读取下一条消息并对其进行处理。

在发送消息时为每种类型的xml使用唯一的消息头。并在接收消息选择器/过滤器时使用
消息选择器/过滤器
,以便根据标头值将其路由/委派给相应的处理程序。这样,您也可以通过单个队列处理不同类型的xml消息。

在发送消息时为每种类型的xml使用唯一的消息头。并在接收消息选择器/过滤器时使用
消息选择器/过滤器
,以便根据标头值将其路由/委派给相应的处理程序。这样,您也可以通过单个队列处理不同类型的xml消息