# 首先在保证php已经正确安装的情况下:
# 安装jdk(本人安装jdk7) 和 scala 因为kafka基于scala开发
# 之后解压安装包 进入 运行命令 ./gradlew jar # 会下载一些包 # 首先运行 zookeeper ./bin/zookeeper-server-start.sh ./config/zookeeper.properties
# 之后运行kafka ./bin/kafka-server-start.sh ./config/server.properties
# 接下来安装PHP的kafka扩展
# 下载 wget https://github.com/EVODelavega/phpkafka/archive/master.zip
# 之后进入文件夹 phpize ./configure --enable-kafka --with-php-config=/usr/local/php/bin/php-config make
# 出现问题
# 解决
# 下载 wget https://github.com/edenhill/librdkafka/archive/master.zip
# 之后安装
# 安装成功之后在重新安装kafka扩展
# 如果出现错误 没有config.h.in的提示
# 需要用autoheader创建出来
php -m | grep kafka
# 说明扩展安装成功 # 之后测试
# 测试代码在README中
$kafka = new Kafka("localhost:9092");
$kafka->produce("topic_name", "message content");
//get all the available partitions
$partitions = $kafka->getPartitionsForTopic('topic_name');
//use it to OPTIONALLY specify a partition to consume from
//if not, consuming IS slower. To set the partition:
$kafka->setPartition($partitions[0]);//set to first partition
//then consume, for example, starting with the first offset, consume 20 messages
$msg = $kafka->consume("topic_name", Kafka::OFFSET_BEGIN, 20);
var_dump($msg);//dumps array of messages