Apache kafka 卡夫卡文件流

Apache kafka 卡夫卡文件流,apache-kafka,kafka-consumer-api,apache-kafka-streams,Apache Kafka,Kafka Consumer Api,Apache Kafka Streams,考虑以下场景。我有一个Kafka经纪人负责减震,还有很多客户,他们给我发送user1.rar文件,分为user1.r01、user1.r02。。。(每个128KB)。一个主题的消费效果与预期相当好。问题是,我需要将拓扑下游的文件解包,并将解包结果流式传输到最终存储器 糟糕的是,我没有一个可操作的存储来存储一个用户的所有RAR。卡夫卡有没有办法在一个主题中简化文件,这样我就可以进行流解包。 我很担心如果 我使用一个消费者,一旦1000个用户开始流媒体,我将压倒它的RAM,rXX文件将在主题中混淆

考虑以下场景。我有一个Kafka经纪人负责减震,还有很多客户,他们给我发送user1.rar文件,分为user1.r01、user1.r02。。。(每个128KB)。一个主题的消费效果与预期相当好。问题是,我需要将拓扑下游的文件解包,并将解包结果流式传输到最终存储器

糟糕的是,我没有一个可操作的存储来存储一个用户的所有RAR。卡夫卡有没有办法在一个主题中简化文件,这样我就可以进行流解包。 我很担心如果

  • 我使用一个消费者,一旦1000个用户开始流媒体,我将压倒它的RAM,rXX文件将在主题中混淆
  • 如果我使用多个消费者,我认为卡夫卡没有“智能路由”,因此我只能在一个消费者中读取一些密钥(与一个用户/用户组相关)+当一个消费者死亡时,我将如何进行再平衡+重置
是否有任何模式,如何应对这种情况


谢谢

我对这一切都很陌生,但我现在已经读了一点卡夫卡,如果我正确理解卡夫卡文档,您将需要使用连接器/任务(参见第8.3章),更具体地说,是SourceConnector/SourceTasks,因为您可以为连接器定义最大数量的任务(“tasks.max”),再加上SourceConnector/SourceTasks的轮询特性,您可以防止服务器过载。 在处理任务后,如果我正确理解文档,应该将其删除

我对这一切都很陌生,但我希望这能有所帮助