2014-04-04 68 views
1

我是Qpid和JMS的新手,我正在尝试使用Qpid Java代理创建一个非常简单的Java应用程序。Qpid与Java的异步消息传递

我正在实现这个简单地发送和接收预定义消息的例子。
http://qpid.apache.org/releases/qpid-0.24/qpid-jms/examples/Hello.java.html

我在2份,消费者生产者划分该应用程序。

如果我先启动示例的消费者部分,然后启动生产者部分,那么一切正常,并且消息被消耗。

但是,如果我先启动生产者然后再启动消费者,则消息将丢失。

换句话说,我怎样才能存储生产者发送的消息以便稍后用消费者应用程序检索它们?

在此先感谢!

回答

1

您正在发射/收听/来自EXCHANGE,要获得您描述的行为应该创建一个QUEUE并将其用作发射器的消息目标。

如果您使用的是Apache QPID经纪人Java实现,您可以创建以下这个步骤在券商网站管理网站新队列:

enter image description here enter image description here enter image description here

在你的代码方面,你应该将您使用的EXCHANGE名称更改为新的QUEUE名称。

+0

太好了,非常感谢! – SirAnderson

+0

@SirAnderson不客气! –