2 u012575301 u012575301 于 2017.08.29 17:38 提问

有人使用过 nmred/kafka吗 有关nmred/kafka的问题

consumer.php

$logger = new Logger('my_logger');
// Now add some handlers
// $logger->pushHandler(new StdoutHandler());
$config = \Kafka\ConsumerConfig::getInstance();
$config->setMetadataRefreshIntervalMs(10000);
$config->setMetadataBrokerList('127.0.0.1:9092');
$config->setGroupId('test');
$config->setBrokerVersion('0.10.2.1');
$config->setTopics(array('test'));
$config->setOffsetReset('earliest');
$consumer = new \Kafka\Consumer();
$consumer->setLogger($logger);
$consumer->start(function($topic, $part, $message) {
var_dump($message);
});
producer.php

$config = \Kafka\ProducerConfig::getInstance();
$config->setMetadataRefreshIntervalMs(10000);
$config->setMetadataBrokerList('127.0.0.1:9092');
$config->setBrokerVersion('0.10.0.1');
$config->setRequiredAck(1);
$config->setIsAsyn(false);
$config->setProduceInterval(500);
$producer = new \Kafka\Producer(function() {
return array(
array(
'topic' => 'test',
'value' => 'dgjll90',
'key' => '',
),
);
});
$producer->setLogger($logger);
$producer->success(function($result) {
var_dump($result);
});
$producer->error(function($errorCode) {
var_dump($errorCode);
});
$producer->send(true);
生产者是没有问题的,能正常发送
但是消费者(consumer)始终得不到数据,查看日志,发现,到最后一直循环
my_logger.DEBUG: Start Request ClientId: kafka-php ApiKey: HeartbeatRequest ApiVersion: 0 [] []
这句话

但有的时候又能正常返回数据,但一般几率很小,差不多10几次一次能正常返回,其他时候就是一直循环上面那句话

求解答

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
php kafka
Kafka 是一种高吞吐的分布式消息系统,能够替代传统的消息队列用于解耦合数据处理,缓存未处理消息等,同时具有更高的吞吐率,支持分区、多副本、冗余,因此被广泛用于大规模消息数据处理应用。 Kafka的特点: 以时间复杂度为O(1)的方式提供消息持久化能力,即使对TB级以上数据也能保证常数时间复杂度的访问性能。高吞吐率。即使在非常廉价的商用机器上也能做到单机支持每秒100K条以上消息
kafka安装及Kafka-PHP扩展的使用
实话说,如果用于队列的话,跟PHP比较配的,还是Redis。用的顺手,呵呵,只是Redis不能有多个consumer。但Kafka官方对PHP不支持,PHP扩展是爱好者或使用者写的。下面就开始讲Kafka的安装吧。我以CentOS6.4为例,64位。 一. 首先确认下jdk有没有安装 使用命令 [root@localhost ~]# java -version java vers
kafka安装及Kafka-PHP扩展的使用,kafkakafka-php扩展
http://www.bkjia.com/PHPjc/1100706.html话说用了就要有点产出,要不然过段时间又忘了,所以在这里就记录一下试用Kafka的安装过程和php扩展的试用。实话说,如果用于队列的话,跟PHP比较配的,还是Redis。用的顺手,呵呵,只是Redis不能有多个consumer。但Kafka官方对PHP不支持,PHP扩展是爱好者或使用者写的。下面就开始讲Kafka的安装吧。...
php如何发送数据到kafka
转自 https://newsn.net/say/php-kafka.html在苏南大叔给大家带来的大数据套装里面,kafka仅仅是个小小的纽带。经常用于数据的发送及转移。在kafka官方的例子中,其实并没有php的相关实现版本。现在网上流传的kafka的相关php库,都是些编程爱好者们自己写的类库,所以就肯定不会有太统一的接口标准了。下面以某个类库为例,展示相关的kafka的php扩展库使用。综...
Kafka简介及使用PHP处理Kafka消息
Kafka简介及使用PHP处理Kafka消息 Kafka 是一种高吞吐的分布式消息系统,能够替代传统的消息队列用于解耦合数据处理,缓存未处理消息等,同时具有更高的吞吐率,支持分区、多副本、冗余,因此被广泛用于大规模消息数据处理应用。 Kafka的特点: 以时间复杂度为O(1)的方式提供消息持久化能力,即使对TB级以上数据也能保证常数时间复杂度的访问性能。高吞吐率。即使在非常廉价的
Kafka简介及各个组件介绍
Kafka:分布式发布-订阅消息系统Kafka分布式发布-订阅消息系统 介绍 组件 Topics and Logs Partition Producers Consumers Guarantees 1. 介绍 Kafka is a distributed,partitioned,replicated commit log service. It provides the functionalit
zookeeper和PHP zookeeper和kafka 扩展安装
风来了.fox1.安装libzookeeperwget http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.9/zookeeper-3.4.9.tar.gztar -xf zookeeper-3.4.9.tar.gz cd zookeeper-3.4.9/src/c ./configure -prefix=/usr/local/zookee
kafka的相关组件介绍
1.1.1 kafka的整体架构图 图片来源于官网 kafka的名词解释和工作方式1、Producer:消息生产者,就是向kafka broker发送消息的客户端2、Concumer:消息消费者,向kafka broker拉取消息的客户端3、Topic:每条发布到Kafka集群的消息都有一个类别,这个类别被称为Topic。(物理上不同
关于Kafka的那些坑
进来使用了Kafka消息队列,喜忧参半。 细数一下,踩过的坑。 1、最好不要用Windows服务器去搞,当然像本人这样被迫使用的,就硬着头皮搞。 Windows服务器搭建Kafka,首先先例少。其次稳定性,个人感觉要比Linux或者Mac上差远了。Windows上,停止Kafka后,在启动需要删掉log。否则会报错,log正在被另一个进程访问。Mac运行则没发现同样错误。 2、Kafka的
kafka重复消费问题
问题描述 采用kafka读取消息进行处理时,consumer会重复读取afka队列中的数据。问题原因 kafka的consumer消费数据时首先会从broker里读取一批消息数据进行处理,处理完成后再提交offset。而我们项目中的consumer消费能力比较低,导致取出的一批数据在session.timeout.ms时间内没有处理完成,自动提交offset失败,然后kafka会重新分配part