点对点模型(P2P)是一种消息通信模型,特点是:
- 消息生产者发送消息到队列或主题。
- 消息消费者从队列或主题消费消息。
- 消息会被投递给一个消费者。
ActiveMQ 中使用 Queue 来实现点对点模型,示例代码如下:
生产者:
ConnectionFactory factory = new ActiveMQConnectionFactory(url);
Connection connection = factory.createConnection();
Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
// 创建 Queue
Queue queue = session.createQueue("myQueue");
// 消息生产者
MessageProducer producer = session.createProducer(queue);
producer.send(session.createTextMessage("Hello"));
消费者:
ConnectionFactory factory = new ActiveMQConnectionFactory(url);
Connection connection = factory.createConnection();
Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
// 消息消费者
Queue queue = session.createQueue("myQueue");
MessageConsumer consumer = session.createConsumer(queue);
// 消息消费
Message message = consumer.receive();
在点对点模型中:
- 消息生产者发送消息到 Queue。
- Queue 中的消息会被投递给一个消费者。
- 消费者消费 Queue 中的消息。