问题1:想问下。MQTT最近总出现服务器推送的消息有时候客户端订阅有时候能收到有时候收不到。这个能查到是消息没有推送到客户端还是什么原因嘛? 问题2:这种就是客户端已经收到了是吗?
对于问题1:MQTT是一种异步通信协议,服务器推送的消息是通过主题(Topic)发布的。如果客户端订阅了该主题,则应该能够接收到消息。但是当服务器推送消息时,可能存在以下问题之一:
客户端订阅的主题名字拼写错误 服务器没有推送消息 (需要检查服务器端的逻辑及配置是否正常) 客户端网络连接出现问题,无法接收到消息 有防火墙或代理服务器拦截了该消息 针对此问题,建议您排查以上状况,同时可以通过对MQTT客户端进行调试来定位具体原因。
对于问题2:给出的截图并不能很明确的解释问题。MQTT是支持客户端与服务器之间的双向通讯的,当客户端收到来自服务器端 发布的消息时,需要对此进行处理(例如处理消息体或在UI上展示),否则会出现类似于消息丢失的情况。
可以通过阿里云MQ控制台、日志等方式来检查服务器端是否存在异常情况,例如消息堆积、网络延迟等。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
涵盖 RocketMQ、Kafka、RabbitMQ、MQTT、轻量消息队列(原MNS) 的消息队列产品体系,全系产品 Serverless 化。RocketMQ 一站式学习:https://rocketmq.io/