请选择 进入手机版 | 继续访问电脑版

默认
发表评论 8
求助服务端是netty-socketio,在切换运营商以及漫游情况下,出现信息丢失
有前辈遇到过切换运营商,以及漫游情况下,出现信息丢失的情况么

即时通讯网 - 即时通讯开发者社区! 来源: - 即时通讯开发者社区!

上一篇:求IM系统的总体架构设计方案,越详细越好下一篇:求助nodejs使用mysql做IM存储,查询出现数据库断连的问题
推荐方案
评论 8
你用的是什么技术方案?
可以说具体一点
签名: 心烦意乱
楼主是自已开发im?
签名: 上班第一天,就是烦
引用:JackJiang 发表于 2019-03-28 19:06
你用的是什么技术方案?
可以说具体一点

server端是Netty ,ios使用socket.id-client-swift和server对接。
现在偶发在连接4G网络的时候,从A城市,去B城市,会出现长连接断掉的情况,重连需要七八十秒
引用:张威Vic 发表于 2019-03-31 21:28
server端是Netty ,ios使用socket.id-client-swift和server对接。
现在偶发在连接4G网络的时候,从A城市 ...

准确地说,你服务端应该用的是netty-socketio吧
签名: 心烦意乱
引用:JackJiang 发表于 2019-03-31 22:01
准确地说,你服务端应该用的是netty-socketio吧

嗯嗯,是的
引用:张威Vic 发表于 2019-03-31 22:05
嗯嗯,是的

一方面netty-socketio工程并不是socket.io官方维护的,很难说是不是能经受的住考验。

另一方面,你可以设置一下客户端的心跳时间,把时间改小一点,这个设置在服务端做就行了,如果是socket.io的nodejs官方版本,就像下面这样设置即可:
// 创建socket.io服务端实例
socketio = require('socket.io')(srv, {
  'pingTimeout':3000, // 本参数表示客户端检测网络掉线的超时时间(单位:毫秒),如不设置则默认是60000(即60秒),此值越大会让客户端感知掉线的时间越长
  'pingInterval':3000 // 本参数表示客户端的心跳间隔(单位:毫秒),如不设置则默认是25000(即25秒),此值越大会让客户端感知掉线的灵敏度越差
});
签名: 心烦意乱
引用:JackJiang 发表于 2019-04-01 09:51
一方面netty-socketio工程并不是socket.io官方维护的,很难说是不是能经受的住考验。

另一方面,你可 ...

之前有一点我描述错了,PC端是socket.io。而IOS是socket.io-client-swift
是服务器没有部署其他运营商的线路吧,例如服务器网络是电信的,用移动的用户肯定很慢
打赏楼主 ×
使用微信打赏! 使用支付宝打赏!

返回顶部