消息队列是否是高带宽数据馈送的正确策略?

时间:2011-10-07 04:19:01

标签: api architecture message-queue rabbitmq

我拥有庞大的数据收集服务器网络,可以生成大量的实时数据。

过去,我为合作伙伴提供了使用HTTP GET近乎实时地获取这些数据的能力。但由于种种原因,我急于放弃这一点。

所以是的...我渴望构建一个新的分发系统,我认为消息队列系统是最佳选择。

我需要能够将数据从我的来源分发给许多不同的合作伙伴。有些合作伙伴会收到所有合作伙伴,其他合作伙而且,如果合作伙伴断开连接,他们需要能够重新连接并且不会遗漏任何数据。 (虽然,为了磁盘和内存,我希望他们的排队邮件在一小时左右后过期)

最后,我需要系统能够每分钟处理数万个enqueue。

您认为消息队列是一个合适的方案吗?

我正在使用RabbitMQ。难以维持吗?

非常感谢!

-Z

1 个答案:

答案 0 :(得分:2)

我无法告诉您这是否是您特定情况下的正确策略,但消息产品确实每天都在高消息率系统中使用。

许多投资界使用各种产品,包括商业(Tibco)和开源(ZeroMQ),仅举两个,以处理来自交易所和其他来源的市场数据。这些可能至少与您的数据传感器一样活跃。

发布/订阅模型,其中一些接收者想要一些消息而一些接收者想要所有消息,以及后期加入或其他所谓的保证消息传递确实是标准的大多数这些产品的功能。

所以继续调查产品,我自己没有使用RabbitMQ,所以不能专门对它进行评论,但是如果使用最小的抽象层,你应该能够将自己与太多特定于平台的调用隔离开来,因此,如果需要,允许您交换消息总线实现者。 (您甚至可能希望构建这样的垫片作为概念验证的一部分,以针对您的特定目的测试多个产品。您可以获得多种产品的经验,充实外立面层,并加快速度产品)

祝你好运