在 PHP 的 RdKafka 扩展中,acks
配置选项用于指定生产者在将消息发送到 Kafka 时,需要等待的确认数量
以下是如何在 PHP RdKafka 中设置 acks
的示例:
<?php
// 创建一个新的消费者实例
$conf = new \RdKafka\Conf();
$producer = new \RdKafka\Producer($conf);
// 设置 'acks' 配置选项
$producer->set('acks', 'all'); // 或者使用 '1' 或 '0'
// 将消息发送到 Kafka
$producer->send([
'topic' => 'your_topic_name',
'message' => 'your_message_content'
]);
// 等待消息发送确认
$producer->poll(0);
// 检查发送是否成功
if ($producer->err) {
echo "Error sending message: " . $producer->errstr() . "\n";
} else {
echo "Message sent successfully\n";
}
在这个示例中,我们将 acks
设置为 'all'
,这意味着生产者需要等待所有同步副本确认收到消息后,才认为消息发送成功。你可以根据需要更改为 '1'
或 '0'
,分别表示等待领导者副本或不需要任何确认。