2017-09-26 88 views
1

考虑以下情形。我有减震卡夫卡经纪人和很多客户,谁给我user1.rar文件,分为文件user1.r01,user1.r02 ...(128KB每个)的。如预期的那样,消费成一个主题的效果很好。问题是我需要解压缩拓扑下游的文件,并将解压后的结果传输到最终存储。卡夫卡文件流媒体

糟糕的是,我没有操作存储设备来存储所有RARS为一个用户。在kafka中有没有什么方法可以简化一个主题中的文件,所以我可以做流解包。 我很担心,如果

  • 我用一个消费者,我会压倒它的RAM,一旦1000的用户开始流和RXx中的文件将主题
  • 在混合起来。如果我使用了多个消费者,我不认为卡夫卡具有“智能路由”功能,所以我可以在一位消费者身上看到只有一些密钥(与一个用户/用户组相关)+我将如何进行再平衡+重置,当其中一位消费者死亡时...

有什么模式,如何应对这种情况?

谢谢!

回答

0

我对这一切都很陌生,但现在我读了一些卡夫卡,如果我正确理解卡夫卡文档,您需要使用连接器/任务(https://kafka.apache.org/documentation/#connect_overview - 请参阅第8.3章),以及更具体地说,SourceConnector/SourceTasks,因为您可以为连接器定义最大量任务(“tasks.max”),并且连同SourceConnector/SourceTasks的轮询特性一起,可以防止服务器超载。 任务的处理后,它应该被删除,如果我理解正确的文档。

我真的很新的这一切,但我希望这会有所帮助。