网上很多看到使用websocket可以很好地实现实时功能。除了兼容性之外,websocket就像是无敌了一样。但实际应用,很多项目也只是使用comet或者其他长轮询的实现而没有,那是为什么呢?
不知道, 不过用 WebSocket 也不完全就是好处, 一个坏处是没有回调, 完全消息的逻辑, 写起来不方便, 还有 Socket 连接一直连着会耗比 Ajax 多的服务端性能.
因为实际应用…没多少个能支持websocket…
你要看现在能支持websocket 的浏览器 IE 妥妥的全系列不能支持…而已现在的IE份额…你能抛弃这部分用户?
移动端…可能稍微好一些.ios 6 就原生支持了…不过,现在份额最大的android …android 4.4 才支持websocket…
你说实际应用怎么玩websocket…
我现在项目用的是socket.io实现的实时聊天功能,我封装了一层(封装了Room, 简单的事件绑定,Room内的广播),做业务逻辑还是蛮爽的。服务器是单独的只给这个应用使用的,平时有看到,资源占用也不多。暂时项目在线人数也不会很多,但老会出现奇怪问题。一段时间连接会自动断掉。看log也没有明显的报错。
目前做的改进都只限于应用级别的,非常郁闷…
撇除浏览器问题,实际应用十分不稳定。但看到文章都是赞美的不得了的,感觉十分无解。
@KingChung 这个算是未来…
就算是现在支持了…也不代表完美支持…
@KingChung 就好比现在浏览器支持webgl…但是要做高大上的事情…还是得花很长时间去优化…
@KingChung 我公司里后端的同学用了 Socket.IO 出现过 CPU 占满的情况, 出现在大量链接断线重连的时候, 感觉也挺危险的
CNode 社区为国内最专业的 Node.js 开源技术社区,致力于 Node.js 的技术研究。
不知道, 不过用 WebSocket 也不完全就是好处, 一个坏处是没有回调, 完全消息的逻辑, 写起来不方便, 还有 Socket 连接一直连着会耗比 Ajax 多的服务端性能.
因为实际应用…没多少个能支持websocket…
你要看现在能支持websocket 的浏览器 IE 妥妥的全系列不能支持…而已现在的IE份额…你能抛弃这部分用户?
移动端…可能稍微好一些.ios 6 就原生支持了…不过,现在份额最大的android …android 4.4 才支持websocket…
你说实际应用怎么玩websocket…
我现在项目用的是socket.io实现的实时聊天功能,我封装了一层(封装了Room, 简单的事件绑定,Room内的广播),做业务逻辑还是蛮爽的。服务器是单独的只给这个应用使用的,平时有看到,资源占用也不多。暂时项目在线人数也不会很多,但老会出现奇怪问题。一段时间连接会自动断掉。看log也没有明显的报错。
目前做的改进都只限于应用级别的,非常郁闷…
撇除浏览器问题,实际应用十分不稳定。但看到文章都是赞美的不得了的,感觉十分无解。
@KingChung 这个算是未来…
就算是现在支持了…也不代表完美支持…
@KingChung 就好比现在浏览器支持webgl…但是要做高大上的事情…还是得花很长时间去优化…
@KingChung 我公司里后端的同学用了 Socket.IO 出现过 CPU 占满的情况, 出现在大量链接断线重连的时候, 感觉也挺危险的