Apache Storm的Message Queue

时间:2015-07-02 16:35:14

标签: solr activemq message-queue apache-storm mq

我非常了解Apache风暴以及消息队列可用的广泛选项。当前系统从数据存储(文本,二进制,任何东西)读取文件,并将它们传递给Apache solr进行索引。但是,需要对这些文件进行额外的处理,这就是风暴进来的地方。在风暴中的UpdateRequestProcessorChain期间,似乎我可以将正在处理的文件写入消息代理,然后我可以随风暴来做一些并行实时处理。

我预计平均每秒有10,000个请求,每个消息4KB。但是,有可能(尽管非常罕见)在几秒钟内传入100GB +文件。是否有一个消息队列仍能很好地满足这些要求?

我已经查看了Kafka,它似乎针对1KB messages进行了优化。 RabbitMQ does not seem to like large files。 ActiveMQ似乎有sending large files的blob消息。有没有人有上述任何一种或其他人的经验?

1 个答案:

答案 0 :(得分:1)

我不认为在任何消息队列中放置100GB +文件是个好主意。您可以预先处理该文件,并在将其放入消息队列之前将其分解为可管理的块。您可以为每个块添加某种ID,以便在处理时可以在Storm中关联文件的不同块。此外,将非常大的文件存储为Solr中的一个文档也不是一个好主意。

相关问题