在脉冲星生产者上使用`SendAsync`方法时收到`收到邮件意外收到的邮件警告'

问题描述 投票:0回答:1

我有一个Pulsar主题,我正在通过多个生产者向其发布消息。这些生产者只是goroutines,我在生产者上使用SendAsync方法发送消息,但我不断收到Got unexpected send receipt for message警告。我查看了客户端的库代码(Pulsar的golang客户端),发现只有在此映射map[uint64]ConnectionListener中未将生产者注册为侦听器时,此警告才会显示。但是,当生产者未注册为侦听器时,我如何发布?

go publish-subscribe apache-pulsar
1个回答
0
投票

出于两个原因,生产者未在map[uint64]ConnectionListener中注册为侦听器。要么从未创建过生产者,要么生产者被关闭。就我而言,我能够发布消息,这意味着确实创建了生产者,但是由于我使用SendAsync方法发送消息,因此它不会阻塞来接收确认。而且,我在产生所有消息后使用defer关闭生产者(我确实使用wait group确保在关闭生产者之前已发送所有消息),但是生产者在收到确认之前已经关闭,因此,警告。

© www.soinside.com 2019 - 2024. All rights reserved.