我的JMS使用者在白天在JMS队列上生成任意数量的消息。一条消息一到达,它就会流向消息侦听器。如果在中间我需要一些其他的消息来,它去另一个消息侦听器不等待第一个?
根据我在这里的理解,我需要创建两个使用者(假设我想同时处理2条消息),每个用户都有自己的会话。两个使用者都可以使用相同的消息侦听器。对吗?
我不确定我是否可以通过单一用户来实现它,但是我可以通过多个侦听器来实现吗?
发布于 2014-04-06 14:17:59
根据JMS文档 @bgth引用的数据,单个会话中的多个MessageListeners不能提供并发性:
用于创建消息使用者的会话序列化在会话中注册的所有消息侦听器的执行。在任何时候,只有会话的一个消息侦听器正在运行
对于并发性,需要在单独的线程中进行多个会话和多个使用者。在本例中,您可以重用相同的MessageListener,但它必须是线程安全。
https://stackoverflow.com/questions/22890086
复制相似问题