监听一个空的rmq队列网络密集吗?

问题描述 投票:0回答:2

在微服务系统中,我有两个服务:service1 有一段数据和 service2 需要不时更新数据。为了获取状态,service2通过HTTP调用调用服务1。

service2 ---(获取数据调用)---> service1

由于 service1 每隔几个小时更改一次数据状态,我想为了从网络中减轻一些负载,我可以通过从 service1 发送到 service2 的 RabbitMQ 消息来替换通过 HTTP 调用的持续轮询并且 service2 可以缓存它直到收到下一条消息。

service1 ---(发送 rmq 消息)---> service2

考虑到目前 HTTP 请求大约每 10 秒发出一次,并且数据每隔几个小时更新一次,从网络的角度来看是否更容易支持新设计?换句话说,监听空 RMQ 队列的网络密集度如何?它是否比每 10 秒发送一次 HTTP GET 调用强度低?

networking rabbitmq amqp
2个回答
0
投票

监听一个空的 RabbitMQ 队列不是网络密集型的。消息由 RabbitMQ 推送到队列的订阅者,因此只有当队列中出现新消息时才会发生通信。


0
投票

监听一个空的 RMQ 队列的网络密集度如何?它是否比每 10 秒发送一次 HTTP GET 调用强度低?

是的,它不那么“密集”。我认为“密集”是指消耗的带宽。

RabbitMQ 消费者仍会偶尔发送心跳消息。

老实说,最大的改进将从轮询架构转变为基于推送的架构。


注意: RabbitMQ 团队监控

rabbitmq-users
邮件列表,有时只在 StackOverflow 上回答问题。

© www.soinside.com 2019 - 2024. All rights reserved.