使用Java在Kafka主题中将整个文件作为单个消息发布

时间:2020-08-06 13:00:23

标签: apache-kafka kafka-producer-api

我有一个用例,我需要使用Kafka Producer将整个文件作为单个消息发布,这样,当使用者读取消息时,使用者应该能够获得整个文件。 我尝试通过将文件转换为字节数组并将其发布到主题来实现此目的

return

使用相同的消息时,每一行都是单独的消息

1 个答案:

答案 0 :(得分:0)

Kafka的默认记录大小为1MB,不是用于文件传递。

推荐模式是

  1. 将文件上传到共享文件系统(例如S3)
  2. 将文件路径作为URI(例如s3://path/to/file
  3. 在主题记录中产生该URI
  4. 消费
  5. 从文件系统下载文件

在没有看到用户的情况下,很难诊断出与用户的确切问题,但是您正在阅读文件。