kafka-php 使用纯粹的php 编写的 kafka 客户端,目前支持 0.8.x 以上版本的 kafka,该项目 v0.2.x 和 v0.1.x 不兼容,如果使用原有的 v0.1.x 的可以参照文档 kafka php v0.1.x document , 不过建议切换到 v0.2.x 上。v0.2.x 使用 php 异步执行的方式来和kafka broker 交互,较 v0.1.x 更加稳定高效, 由于使用 php 语言编写所以不用编译任何的扩展就可以使用,降低了接入与维护成本。
安装环境要求
PHP 版本大于 5.5
Kafka Server 版本大于 0.8.0
消费模块 Kafka Server 版本需要大于 0.9.0
Installation
使用 Composer 安装
添加 composer 依赖 nmred/kafka-php 到项目的 composer.json 文件中即可,如:
立即学习“PHP免费学习笔记(深入)”;
{
"require": {
"nmred/kafka-php": "0.2.*"
}
}
汽车导购门户网为齐博CMS V7版的基础改编而成的,程序为整站程序,自带3000多数据,安装好在后台恢复数据就可以直接使用哦。 安装前,请必须确认/data/ /cache/目录可写 然后在地址栏目输入安装地址 http://xxx.com/install.php 一步步的安装. blog 博客 wn 万能文章 count 流量统计 exam 考试系统 form 万能表单
Produce
pushHandler(new StdoutHandler());
// 设置生产相关配置,具体配置参数见 [Configuration](Configuration.md)
$config = \Kafka\ProducerConfig::getInstance();
$config->setMetadataRefreshIntervalMs(10000);
$config->setMetadataBrokerList('10.13.4.159:9192');
$config->setBrokerVersion('0.9.0.1');
$config->setRequiredAck(1);
$config->setIsAsyn(false);
$config->setProduceInterval(500);
$producer = new \Kafka\Producer(function() {
return array(
array(
'topic' => 'test',
'value' => 'test....message.',
'key' => 'testkey',
),
);
});
$producer->setLogger($logger);
$producer->success(function($result) {
var_dump($result);
});
$producer->error(function($errorCode, $context) {
var_dump($errorCode);
});
$producer->send();
Consumer
pushHandler(new StdoutHandler());
$config = \Kafka\ConsumerConfig::getInstance();
$config->setMetadataRefreshIntervalMs(10000);
$config->setMetadataBrokerList('10.13.4.159:9192');
$config->setGroupId('test');
$config->setBrokerVersion('0.9.0.1');
$config->setTopics(array('test'));
//$config->setOffsetReset('earliest');
$consumer = new \Kafka\Consumer();
$consumer->setLogger($logger);
$consumer->start(function($topic, $part, $message) {
var_dump($message);
});以上内容就是使用 PHP 编写的 Kafka 客户端 教程,希望能帮助到大家。
相关推荐:










