默认
发表评论 29
想开发IM:买成品怕坑?租第3方怕贵?找开源自已撸?尽量别走弯路了... 找站长给点建议
你MobileIMSDK版本具体用的是哪个版本?
协议是TCP还是UDP?
评论 29
引用:李鸿超 发表于 2021-03-02 09:45
不让我发图我去....

为啥不让你发图啊,是不是浏览器不支持flash?
你的设备是不是定制的?设备是常开、常联网状态吧
引用:李鸿超 发表于 2021-03-02 11:49
我的设备机型是 三星 SM G950F;

设备是常开长联网状态;

你用的MobileIMSDK的版本号记得是多少吗
引用:李鸿超 发表于 2021-03-02 12:03
版本应该是v5.0, 具体从代码中看不出版本吧?

你的应用在这种场景下,必须要用udp协议吗
引用:李鸿超 发表于 2021-03-02 13:42
大佬怎么看?

你这种场景,我建议换成tcp协议版本试试。
tcp版本对于异步和线程的管理要优化一些,我做过暴力测试,写代码时候也特别注意过,根据这个版本的线程管理,应该不会出现你说的这种OOM。
你去试试,有什么情况,你随时上来反馈
引用:李鸿超 发表于 2021-03-02 15:23
另外 TCP版本和UDP版本有什么功能上的区别吗? 还是仅仅是协议不同. 我看文档并没有关于这块的解释;

两个版本,api是一模一样的,你客户端几乎是只要替换jar包就行了。

服务端唯一要注意的,就是在开放tcp协议的端口(之前你只需要开放udp协议端口)。没别的区别了
引用:李鸿超 发表于 2021-03-03 09:27
您好,我试了下,TCP版本不会导致这个问题;
但是,我还是想知道TCP版本和UDP版本有什么功能上的区别吗? 还 ...

只有协议不同,里面的实现代码肯定也是不同,但暴露给开发者的api完全相同,目的就是方便切换不同协议。
引用:李鸿超 发表于 2021-03-03 11:25
好的好的 十分感谢.  另外这两种协议在性能上有什么差别吗? 会不会UDP传输更快或者TCP更消耗性能之类的说 ...

除非网络特别烂的场景,我建议优先选用tcp
引用:李鸿超 发表于 2021-03-03 13:40
为啥在网络特别烂的时候要用UDP..是因为本身协议问题还是SDK中重连机制的问题呢?
能麻烦能解释一下吗? : ...

你在国内打开github是不是慢的跟屎一样,背后的原因就是tcp在跨国烂网下的表现啊

udp效率高一点,行就行,不行就不行,不需要协议栈里面去重传、指数退避那些乱七八糟的
引用:李鸿超 发表于 2021-03-03 15:37
好的.大佬..多谢解答..我研究下....

我试了TCP的 的确是没有自动重连线程无限增长的问题了..

ok
打赏楼主 ×
使用微信打赏! 使用支付宝打赏!

返回顶部