像这样在 RabbitMQ 上发布消息后:
[exchange publishMessage:@"YOUR MESSAGE" usingRoutingKey:routingQueue propertiesMessage:props mandatory:NO immediate:NO error:&error];
它工作得很好,但是是否可以使用这个 lib 接收来自 RabbitMQ 的每条消息的确认?
像这样在 RabbitMQ 上发布消息后:
[exchange publishMessage:@"YOUR MESSAGE" usingRoutingKey:routingQueue propertiesMessage:props mandatory:NO immediate:NO error:&error];
它工作得很好,但是是否可以使用这个 lib 接收来自 RabbitMQ 的每条消息的确认?
因此,这些发布者确认(因为您在评论中写了您对代理-> 发布者感兴趣)在 amqp 级别,由 RMQ 本身处理。在“API”级别,您可能会收到异常或返回值或某些指示,具体取决于库。
引用上述链接:
对于不可路由的消息,一旦交换验证消息不会路由到任何队列(返回队列的空列表),代理将发出确认。如果消息也是强制发布的,basic.return 会在 basic.ack 之前发送给客户端。否定确认 (basic.nack) 也是如此。
对于可路由消息,basic.ack 在消息被所有队列接受时发送。对于路由到持久队列的持久消息,这意味着持久保存到磁盘。对于镜像队列,这意味着所有镜像都接受了消息。