windows上 php安装 Kafka扩展

2020-1-15 流沙 PHP

0x01 确定自己的php版本


php.jpg


0x02 下载kafka组件


下载地址 https://pecl.php.net/package/rdkafka


找到对应的版本, 测试了4.x win10的机器, 用代码测试报错, 下载3.1.3的版本 测试正常

kafka.jpg

kafka1.jpg


根据自己的环境, 下载相应的版本


0x03 安装插件

复制 librdkafka.dll 到F:\phpStudy\PHPTutorial\php\php-7.3.4-nts\目录下

复制php_rdkafka.dll放到 F:\phpStudy\PHPTutorial\php\php-7.3.4-nts\ext目录下

在 php.ini 文件中添加 extension=php_rdkafka.dll


0x04 查看配置

kafka9.jpg


0x05 测试Demo


直接php 执行文件 (搭建自己的zk集群和kafka集群)


生产者


<?php

$rk = new RdKafka\Producer();
$rk->setLogLevel(LOG_DEBUG);
$rk->addBrokers("127.0.0.1");

$topic = $rk->newTopic("test");

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


消费者


<?php

$rk = new RdKafka\Consumer();
$rk->setLogLevel(LOG_DEBUG);
$rk->addBrokers("127.0.0.1");

$topic = $rk->newTopic("test");

$topic->consumeStart(0, RD_KAFKA_OFFSET_BEGINNING);

while (true) {
    $msg = $topic->consume(0, 1000);
    if (null === $msg) {
        continue;
    } elseif ($msg->err) {
        echo $msg->errstr(), "\n";
        break;
    } else {
        echo $msg->payload, "\n";
    }
}




发表评论:

Powered by 流沙团

备案号:鄂ICP备15017378号-1