Клиент для работы с Apache Kafka на языке PHP можно найти в виде различных библиотек и расширений. Они предоставляют удобный и простой в использовании интерфейс для взаимодействия с Kafka.
Одной из наиболее популярных библиотек для работы с Kafka на PHP является "rdkafka". Она является официальным расширением, разработанным сообществом Kafka. Оно предоставляет высокоуровневый API для производства и потребления сообщений.
Для установки "rdkafka" вы можете использовать менеджер пакетов Composer, указав его в зависимостях вашего проекта:
composer require rdkafka/rdkafka
После установки вы можете использовать классы и методы библиотеки в своем коде:
<?php // Подключение библиотеки $conf = new RdKafkaConf(); $conf->set('metadata.broker.list', 'localhost:9092'); // Создание продюсера $producer = new RdKafkaProducer($conf); // Создание сообщения $message = new RdKafkaMessage(); $message->setPayload('Hello, Kafka!'); // Отправка сообщения в топик $producer->produce('my_topic', -1, $message); $producer->flush(1000); // Создание потребителя $consumer = new RdKafkaKafkaConsumer($conf); $consumer->subscribe(['my_topic']); // Потребление сообщений while (true) { $message = $consumer->consume(1000); switch ($message->err) { case RD_KAFKA_RESP_ERR_NO_ERROR: echo $message->payload, PHP_EOL; break; case RD_KAFKA_RESP_ERR__PARTITION_EOF: break; case RD_KAFKA_RESP_ERR__TIMED_OUT: break; default: echo $message->errstr(), PHP_EOL; break; } } ?>
Также стоит отметить, что существуют и другие библиотеки для работы с Kafka на PHP, такие как "phpkafka", "kafka-php" и другие. Они предлагают свои собственные API и функциональность, поэтому выбор конкретной библиотеки зависит от ваших потребностей и предпочтений.