【发布时间】:2014-12-19 20:23:20
【问题描述】:
我在同一台机器上有一个生产者和经纪人。生产者发送消息如下:
channel = connection.createChannel();
//Create a durable queue (if not already present)
channel.queueDeclare(merchantId, true, false, false, null);
//Publish message onto the queue
channel.basicPublish("", consumerId, true, false,
MessageProperties.MINIMAL_PERSISTENT_BASIC, "myMessage");
消费者坐在另一台机器上并收听消息。它使用这样的显式确认:
while (true) {
QueueingConsumer.Delivery delivery = consumer.nextDelivery();
//Handle message here
channel.basicAck(delivery.getEnvelope().getDeliveryTag(), false);
}
据我了解,ack 是为了让代理将消息出列。
但是我的生产者如何知道消费者发送的 ack?
【问题讨论】:
标签: rabbitmq amqp producer-consumer