卡夫卡使用者使用数据的速度非常慢,仅消耗前500条记录

时间:2019-05-06 07:25:55

标签: apache-kafka apache-storm kafka-consumer-api

我正在尝试将MongoDB和Storm-Kafka集成,Kafka Producer从MongoDB生成数据,但无法从Consumer端获取所有记录。它只消耗100万条记录中的500-600条记录。

日志文件中没有错误,拓扑仍然有效,但未处理其他记录。

Kafka版本:0.10。* Storm版本:1.2.1

我是否需要在Consumer中添加任何配置?

 conf.put(Config.TOPOLOGY_BACKPRESSURE_ENABLE, false);
 conf.put(Config.TOPOLOGY_MAX_SPOUT_PENDING, 2048);
 conf.put(Config.TOPOLOGY_EXECUTOR_RECEIVE_BUFFER_SIZE, 16384);
 conf.put(Config.TOPOLOGY_EXECUTOR_SEND_BUFFER_SIZE, 16384);

BrokerHosts hosts = new ZkHosts(zookeeperUrl);
        SpoutConfig spoutConfig = new SpoutConfig(hosts, topic, zkRoot, consumerGroupId);
        spoutConfig.scheme = new KeyValueSchemeAsMultiScheme(new StringKeyValueScheme());
        spoutConfig.fetchSizeBytes = 25000000;
        if (startFromBeginning) {
            spoutConfig.startOffsetTime = OffsetRequest.EarliestTime();
        } else {
            spoutConfig.startOffsetTime = OffsetRequest.LatestTime();
        }
        return new KafkaSpout(spoutConfig);
    }

我希望Kafka壶嘴应读取生产者生产的kafka主题中的所有记录。

0 个答案:

没有答案