Быстрый вопрос, я захожу в Kafka, используя php -rdkafka (https://github.com/arnaud-lb/php-rdkafka).
Я просмотрел документацию и не могу найти синтаксис для создания в существующий topi c, если только синтаксис newTopi c не будет вставлен в существующий topi c, в чем я сомневаюсь. Я продолжаю получать ошибку Java, и я не очень хорошо отлаживаю ошибку Java. Я прошу помощи у тех, кто использовал фреймворк, правильный ли синтаксис? Пожалуйста, посоветуйте
<?php
$conf = new RdKafka\Conf();
$conf->set('metadata.broker.list', 'localhost:9092');
//If you need to produce exactly once and want to keep the original produce order, uncomment the line below
//$conf->set('enable.idempotence', 'true');
$producer = new RdKafka\Producer($conf);
$topic = $producer->newTopic("test"); // Is this a correct syntax to consume existing topic?
for ($i = 0; $i < 10; $i++) {
$topic->produce(RD_KAFKA_PARTITION_UA, 0, "Message $i");
$producer->poll(0);
}
for ($flushRetries = 0; $flushRetries < 10; $flushRetries++) {
$result = $producer->flush(10000);
if (RD_KAFKA_RESP_ERR_NO_ERROR === $result) {
break;
}
}
if (RD_KAFKA_RESP_ERR_NO_ERROR !== $result) {
throw new \RuntimeException('Was unable to flush, messages might be lost!');
}