[讨论] 实时聊天实现。
网上很多看到使用websocket可以很好地实现实时功能。除了兼容性之外,websocket就像是无敌了一样。但实际应用,很多项目也只是使用comet或者其他长轮询的实现而没有,那是为什么呢?
8 回复
因为实际应用…没多少个能支持websocket…
你要看现在能支持websocket 的浏览器 IE 妥妥的全系列不能支持…而已现在的IE份额…你能抛弃这部分用户?
移动端…可能稍微好一些.ios 6 就原生支持了…不过,现在份额最大的android …android 4.4 才支持websocket…
你说实际应用怎么玩websocket…
我现在项目用的是socket.io实现的实时聊天功能,我封装了一层(封装了Room, 简单的事件绑定,Room内的广播),做业务逻辑还是蛮爽的。服务器是单独的只给这个应用使用的,平时有看到,资源占用也不多。暂时项目在线人数也不会很多,但老会出现奇怪问题。一段时间连接会自动断掉。看log也没有明显的报错。
目前做的改进都只限于应用级别的,非常郁闷…
撇除浏览器问题,实际应用十分不稳定。但看到文章都是赞美的不得了的,感觉十分无解。
@KingChung 这个算是未来…
就算是现在支持了…也不代表完美支持…
@KingChung 就好比现在浏览器支持webgl…但是要做高大上的事情…还是得花很长时间去优化…