我刚开始学习卡夫卡。我做了很多googlings,但仍然没有线索:我如何能自动拾取放在文件夹中的文件作为生产者的输入,从而被消费者拾取?谢谢。作为起点,我尝试了以下代码,但它不起作用(简单地退出,没有错误):
./kafka-console-producer.sh --broker-list sandbox.hortonworks.com:6667 --topic kafka-topic1 < test.csv

下面是更新:
我尝试了更多与创建生产者和消费者完全相同的方法,我看到消费者逐行接收csv内容,但并不完整。我马上又试了一次,我再也看不到结果了。然后我做了控制台生产者和消费者收到消息,在它之后我做了文件输入,消费者收到,但在错误的顺序,请参考屏幕截图。
test.csv:

制片人:

消费者:

终止控制台生产者并启动文件生产者

在消费者中没有发生任何事情:

终止消费者,重启producer(File)后重启: consumer收到文件:

请注意,序列不是原始顺序
再次运行生产者,消费者再次收到它:

序列看起来又“错误”了?
总之,这里很不稳定,有什么线索吗?
顺便说一句:我测试了我的互联网连接速度,下载和上传速度都在10Mb/s左右
发布于 2017-02-21 09:51:50
Kafka控制台生产者不是为这个用例而设计的。看看Kafka Connect --它允许设置文件的连续导入:
http://docs.confluent.io/current/connect/connect-filestream/filestream_connector.html
https://stackoverflow.com/questions/42357075
复制相似问题