【问题标题】:Is Message Queuing the right strategy for a high-bandwidth data feed?消息队列是高带宽数据馈送的正确策略吗?
【发布时间】:2011-12-02 17:41:38
【问题描述】:

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

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

所以是的...我渴望建立一个新的分发系统,我认为消息队列系统是要走的路。

我需要能够将来自我的来源的数据分发给多个不同的合作伙伴。一些合作伙伴获得全部,其他合作伙伴只获得一部分。而且,如果合作伙伴断开连接,他们需要能够重新连接并且不会丢失任何数据。 (虽然,为了磁盘和内存,我希望他们排队的消息在一个小时左右后过期)

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

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

我正在研究使用 RabbitMQ。难维护吗?

非常感谢!

-Z

【问题讨论】:

  • 哪个更重要:吞吐量还是延迟/响应时间?
  • 对合作伙伴的延迟并不是很重要。如果不到一分钟就好了。

标签: api architecture message-queue rabbitmq


【解决方案1】:

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

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

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

所以请继续研究产品,我自己没有使用过RabbitMQ,因此无法具体评论它,但是使用最小的抽象层,您应该能够将自己与太多特定于平台的调用隔离开来,因此允许您在需要时交换消息总线实现者。 (您甚至可能希望构建这样一个 shim 作为概念验证的一部分,以针对您的特定目的测试多个产品。您可以获得多种产品的经验,充实外观层,并加快速度产品)

祝你好运

【讨论】:

    猜你喜欢
    • 2010-11-23
    • 2011-12-16
    • 2023-03-17
    • 1970-01-01
    • 2020-01-07
    • 1970-01-01
    • 2023-02-01
    • 2011-05-17
    • 1970-01-01
    相关资源
    最近更新 更多