nic*_*u09 2 java activemq-classic jms message-queue
我是activemq的新手.我读了一些文章并做了这个.请帮助我解决以下任务.我从我的java应用程序向activemq生成一条消息,我在另一个java应用程序中有该消息的消费者.所以我将从activemq获取消息.每次这个消费者(听众)在activemq中寻找消息.我的问题是activemq可以将消息推送到消费者(监听器).
activemq仅用于存储消息?它会进行任何推拉操作吗?activemq总是需要生产者(产生消息)和消费者(消费消息)?
谁能帮我
谢谢
raf*_*ian 13
ActiveMq,WebLogic,IBM MQ和任何JMS兼容的提供程序都是基于目标的消息传递系统; 目标或主题是队列或主题.发送消息时,生产者可以发送消息并立即断开连接; ActiveMq将消息存储在队列中.接收时,消息使用者可以独立于发送者接收同步或异步.

消息生产者向目的地发送消息; 它的工作已经完成.
QueueSender queueSender = queueSession.createSender(myQueue);
queueSender.send(message);
Run Code Online (Sandbox Code Playgroud)
消息使用者可以通过以下两种方式之一接收消息:
Synchrounous,在此receive()明确调用
QueueReceiver queueReceiver = queueSession.createReceiver(myQueue);
queueConnection.start();
Message m = queueReceiver.receive();
Run Code Online (Sandbox Code Playgroud)
异步,这里你从MessageListener接口实现回调方法:
class MyQueueReceiver implements javax.jms.MessageListener {
QueueReceiver queueReceiver = queueSession.createReceiver(myQueue);
queueReceiver.setMessageListener(this);
...
public void onMessage(Message msg){
//consume message here
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4278 次 |
| 最近记录: |