【问题标题】:A data buffer to subscribe and unsubcribe with real-time data using rabbitmq使用rabbitmq订阅和取消订阅实时数据的数据缓冲区
【发布时间】:2013-03-20 22:43:49
【问题描述】:

基本上我想创建一个客户端可以偶尔订阅的数据缓冲区,获取最后一段时间的所有数据,继续监听实时数据,然后在一段时间后取消订阅,然后重复。

我正在考虑使用过期的 TTL rabbitmq 队列。这个想法是让客户偶尔订阅和取消订阅它。当客户端订阅队列时,它应该获取队列上所有可用的消息。然后客户端将继续在频道上将实时数据推送给他们。

这是解决这个问题的好方法吗?我知道如何在rabbitmq 上发布/订阅。我该如何做到这一点,以便每次客户端订阅时它都会将所有数据推送到队列中?

【问题讨论】:

    标签: stream buffer rabbitmq publish-subscribe


    【解决方案1】:

    这取决于您谈论的数据量。您的方法的缺点是,如果数据速率很高并且 TTL 设置很长时间,队列可能会填满大量数据。您还必须保持队列处于活动状态。并且您必须从一开始就为每个可能的订阅者设置一个有效队列。

    我建议Recent History Exchange 或许对其进行修改以使其包含更多消息。

    【讨论】:

    • 每个队列只有几 MB 的数据要缓冲。不会有很多订阅者,可能最多只有几个。
    • 你的评论很模糊,我不确定你在问我什么。你看过最近的历史交流吗?
    • 是的,它似乎符合我的描述。会试一试。谢谢
    猜你喜欢
    • 2021-04-08
    • 1970-01-01
    • 2021-08-08
    • 2018-04-19
    • 2021-05-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-12
    相关资源
    最近更新 更多