Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  linux下php扩展kafka的实例分享

linux下php扩展kafka的实例分享

小云云
小云云asal
2018-05-11 15:11:362566semak imbas

本文主要和大家分享linux下php扩展kafka的实例,希望能帮助到大家。

1、安装librdkafka

wget https://github.com/edenhill/librdkafka/archive/master.zip #下载
mv master.zip librdkafka-master.zip #修改包名
unzip librdkafka-master.zip #解压
cd librdkafka-master #进入安装文件夹
./configure #配置
make #编译
make install #安装

2、安装phpkafka

cd /usr/local/src #进入安装包存放目录
wget https://github.com/EVODelavega/phpkafka/archive/master.zip #下载
mv master.zip phpkafka-master.zip #修改包名
unzip phpkafka-master.zip #解压
cd phpkafka-master #进入安装文件夹
/usr/local/php/bin/phpize #加载php扩展模块
./configure --enable-kafka --with-php-config=/usr/local/php/bin/php-config #配置
make #编译
make install #安装
3、修改php配置文件
vi /usr/local/php/etc/php.ini

打开php配置文件,在最后一行添加下面的代码

extension="kafka.so"

:wq! #保存退出

4、测试

以下代码,保存为phpinfo.php

<?php
phpinfo();
?>

有kafka模块

这是生产者

$kafka = new Kafka("localhost:9092");
$partitions = $kafka->getPartitionsForTopic(&#39;testkk&#39;);
$in = fopen(&#39;php://stdin&#39;, &#39;r&#39;);
while (true) {
    echo "\nEnter comma separated messages:\n";
    $messages = explode(&#39;,&#39;, fgets($in));
    foreach (array_keys($messages) as $k) {
        //$messages[$k] = trim($messages[$k]);
    }
        $bytes=$kafka->produce("testkk", "kkkkkkk");
    printf("\nSuccessfully sent %d messages (%d bytes)\n\n", count($messages), $bytes);
}

相关推荐:

使用 PHP 编写的 Kafka 客户端

kafka安装及Kafka-PHP扩展的使用

kafka装配及Kafka-PHP扩展的使用

Atas ialah kandungan terperinci linux下php扩展kafka的实例分享. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:Linux之定时任务crontab详解Artikel seterusnya:Linux下安装Redis、MongoDB