kafka高级消费者API读取消息不完整

鹤鸣 发表于: 2018-03-05   最后更新时间: 2018-03-05 14:46:03   3,115 游览

在实现kafka消费者的时候出现跳着消费数据的情况
比如,生产者生产的数据是0,1,2,3,4,5
java实现的消费者只消费到了2,5两个数字

java实现的消费者代码如下:

//声明一个线程池,用于消费各个partition
        ExecutorService executor=Executors.newFixedThreadPool(threadCount);
        //获取对应topic的消息队列
        final KafkaStream<byte[], byte[]> stream = consumerMap.get(topic).get(0);
            System.out.println("开始消费消息...");
            executor.execute(new Runnable() {
                @Override
                public void run() {
                    ConsumerIterator<byte[], byte[]> it = stream.iterator();
                    //有信息则消费,无信息将会阻塞
                    while (it.hasNext()){
                        try {
                            System.out.println("收到消息" + new String(it.next().message()));
                        } catch (Exception e) {
                            e.printStackTrace();
                            return;
                        }
                    }
发表于 2018-03-05
添加评论

拿这个例子跑一下,什么都不要动。
https://www.orchome.com/10

topicCountMap<String(topic), Integer(number)>    这个number给的是几

你的答案

查看kafka相关的其他问题或提一个您自己的问题