PHPでのKafkaの使い方は何ですか?

PHPでKafkaを使用する際は、Kafka PHPクライアントライブラリを使用して実装することができます。以下に使用例をいくつか示します。

  1. PHPを使用してKafkaプロデューサーを使うと、Kafkaクラスターにメッセージを送信することができます。Producerクラスを使用してKafka PHPクライアントライブラリを実装することができます。以下は例示コードです:
<?php
require('vendor/autoload.php');

$producer = new RdKafka\Producer();
$producer->setLogLevel(LOG_DEBUG);
$producer->addBrokers('localhost:9092');

$topic = $producer->newTopic('test');

for ($i = 0; $i < 10; $i++) {
    $topic->produce(RD_KAFKA_PARTITION_UA, 0, 'Message ' . $i);
}

$producer->poll(0);

while ($producer->getOutQLen() > 0) {
    $producer->poll(50);
}
  1. 消費者:Kafkaのクラスターからメッセージを購読して処理するために、PHPでKafkaの消費者を使用することができます。Consumerクラスを使用して、Kafka PHPクライアントライブラリを実装することができます。以下はコードの例です:
<?php
require('vendor/autoload.php');

$consumer = new RdKafka\Consumer();
$consumer->setLogLevel(LOG_DEBUG);
$consumer->addBrokers('localhost:9092');

$topic = $consumer->newTopic('test');
$topic->consumeStart(0, RD_KAFKA_OFFSET_BEGINNING);

while (true) {
    $message = $topic->consume(0, 1000);
    if ($message->err) {
        echo "Error: {$message->errstr()}\n";
        break;
    } else {
        echo "Message: {$message->payload}\n";
    }
}

これらは、PHPで生産者と消費者を実装するためのいくつかの例です。実際のアプリケーションでは、具体的な要件に応じてカスタマイズや拡張が可能です。

bannerAds