Я использую storm-kafka-0.9.3 для чтения данных из Kafka и обработки этих данных в Storm. Ниже я использую Kafka Spout. Но проблема в том, что я убиваю кластер Storm, он не читает старые данные, которые были отправлены за время, когда он был мертв, и начал читать с последнего смещения.Storm Kafka Spout Невозможно прочесть последний отзыв
BrokerHosts hosts = new ZkHosts(Constants.ZOOKEEPER_HOST);
SpoutConfig spoutConfig = new SpoutConfig(hosts, CommonConstants.KAFKA_TRANSACTION_TOPIC_NAME
, "/" + CommonConstants.KAFKA_TRANSACTION_TOPIC_NAME,UUID.randomUUID().toString());
spoutConfig.scheme = new SchemeAsMultiScheme(new StringScheme());
//Never should make this true
spoutConfig.forceFromStart=false;
spoutConfig.startOffsetTime =-2;
KafkaSpout kafkaSpout = new KafkaSpout(spoutConfig);
return kafkaSpout;
Пожалуйста, вы можете попробовать закомментировать 'spoutConfig.forceFromStart = ложь;' строки или с помощью набора 'spoutConfig.forceFromStart = true' – user2720864
Пытался что, но тот же вопрос, на самом деле увидеть Предположим у меня есть 100 сообщений в Кафки, Штормовая обработка, которая, предположим, после 100-го сообщения Storm пошла вниз, и моя конечная точка http нажала еще 300 сообщений в Kafka, поскольку Storm обработала только 100 сообщений, которые я ожидаю, когда Storm просыпается, она должна начать обработку из 101 сообщения, где оно осталось. – user1249655
так что происходит? в вашем посте вы упомянули, что начинаете читать с последнего смещения .. не то, что вы ищете? – user2720864