PHPMQTT问题一二三
问题一:PHPMQTT作为客户端订阅超过一定数量的主题后,系统就会报错。
思路:在网上查找原因,失败;
打开调试debug = true ; 结果proc方法中报错: eof receive
问题二:为什么读不到socket呢?
MQTT为TCP传输协议:遵循TCP三次握手协议,所以对MQTT有重新理了一次;
在MQTT群里咨询,请教大佬;
一个技术大姐:(其实没我大多少):让我看看MQTT日志报错;
于是查看MQTT错误日志同时报错:
2018-07-27 18:43:18.412 [error] <0.3216.9>@emqttd_client:received:340 Client(39.104.65.187:37660): Parser failed for {function_clause,[{emqttd_parser,parse_utf,[<<6>>],[{file,"src/emqttd_parser.erl"},{line,206}]},{emqttd_parser,parse_topics,3,[{file,"src/emqttd_parser.erl"},{line,195}]},{emqttd_parser,parse_frame,3,[{file,"src/emqttd_parser.erl"},{line,147}]},{emqttd_client,received,2,[{file,"src/emqttd_client.erl"},{line,319}]},{gen_server2,handle_msg,2,[{file,"src/gen_server2.erl"},{line,1046}]},{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,247}]}]}
2018-07-27 18:43:18.413 [error] <0.3216.9>@emqttd_client:received:341 Client(39.104.65.187:37660): Error data: <<0,1,0,6,36,83,89,83,47,35,0,0,17,47,122,113,49,48,48,108,47,100,101,118,47,112,117,98,47,35,0,0,17,47,122,113,49,48,48,108,47,100,101,118,47,114,101,112,47,35,0,0,17,47,122,113,49,48,48,108,47,100,101,118,47,97,115,107,47,35,0,0,17,47,122,113,49,48,48,108,47,100,101,118,47,99,114,100,47,35,0,0,17,47,122,113,49,48,48,108,47,100,101,118,47,116,121,112,47,35,0,0,17,47,122,113,49,48,48,108,47,100,101,118,47,111,117,116,47,35,0>>
发现消息不对称;
于是再去网上查,也没有查出原因;
问题三:为什么会Function消息不对称呢?
网上查了很多,包括国外的网站:git上说是time问题也有的说是mqtt QOS 设置为1。都试过,不行
群里一个大哥回复我了
说是我可能是消息FUNCTION写错了
我试过的却是对的。
然后我给他说,我用其他客户端没问题。他对我说,可能是那个库的问题。让我分批次订阅;
问题四:怎么去分批次订阅
于是我根据不同的方法写了两个订阅主题的方法。测试一下通过了。
经过这次错误,明白自己对消息堆栈的理解还不够,以后要多学习他的源码。多深入理解。不然遇到问题要不是别人的点拨上,还会出错。
感谢大家的帮助。
最新文章
- SQLServer2012在登录远程服务器实例时报错:尝试读取或写入受保护的内存
- Weblogic新增域(可以配置新端口)
- Xcode插件
- 使用Zabbix监控RabbitMQ
- CQRS学习——IOC,配置,仓储隔离以及QueryEntry[其三]
- 使用java.util.Timer来周期性的执行制定的任务
- Wix - 教程
- Go程序GC优化经验分享
- ssh登陆笔记&#128210;
- 1432: [ZJOI2009]Function
- C# servicestack.redis 互通 java jedis
- Ruby on Rails---Active Admin使用(一)
- HDU 4325 Flowers(树状数组)
- vue的风格指南(必要的)
- Java的异常机制
- 修复./mysql/proc
- MySQL DBA工作角色和职责介绍
- 注解_Annotation
- URL to load resources from the classpath in Java
- HDU 2093 考试排名 模拟题