这个 api-rd_kafka_poll_set_consumer() 的目的是什么? 在 rdkafka.h 文件中,它表示一旦您将 rd_kafka_poll 队列(rk->rep)重定向到 rd_kafka_consumer_poll 的队列(rkcg->rkcg_q),在此之后您不应该调用 rd_kafka_poll。
有人可以详细说明哪个队列发生了什么吗?生产者是否应该调用 rd_kafka_consumer_poll 来查看生成的消息?
最佳答案
rd_kafka_poll_set_consumer()
转发通常由rd_kafka_poll()
服务的标准事件(如 error_cb、stats_cb 等)到 rd_kafka_consumer_poll()
服务的消费者队列.
这简化了应用程序轮询循环,因为它只需一次调用 rd_kafka_consumer_poll()
即可服务标准回调并接收消息。而不必调用 rd_kafka_poll()
.
顾名思义,此事件队列重新路由仅对消费者感兴趣,生产者应用程序仍应调用 rd_kafka_poll()
为 dr_cb 等服务。
关于apache-kafka - 如何在librdkafka中使用rd_kafka_poll_set_consumer?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39799928/