RocketMQ的消息拉取为什么使用长轮询?都已经建立长连接了还有必要长轮询吗?

RocketMQ的消息拉取为什么使用长轮询?都已经建立长连接了还有必要长轮询吗?长连接已经存在为什么不直接使用长连接传递消息,而在其上面做一个长轮询呢?

展开
收起
嘟嘟嘟嘟嘟嘟 2024-05-15 13:25:55 91 分享 版权
1 条回答
写回答
取消 提交回答
  • 个人理解,对于一个提供队列服务的 Server 来说,用 Push方式主动推送有两个问题:

    1、会增加 Server 端的工作量,进而影响 Server 的性能
    2、Client 的处理能力存在差异,Client 的状态不受 Server 控制,如果 Client 不能及时处理 Server 推送过来的消息,会造成各种潜在问题
    此回答整理自钉群“群2-Apache RocketMQ 中国开发者钉钉群”

    2024-05-15 13:50:26
    赞同 展开评论

涵盖 RocketMQ、Kafka、RabbitMQ、MQTT、轻量消息队列(原MNS) 的消息队列产品体系,全系列产品 Serverless 化。RocketMQ 中文社区:https://rocketmq-learning.com/

还有其他疑问?
咨询AI助理