`
haiyupeter
  • 浏览: 419118 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

HTML5 WebSocket

阅读更多

1.WebSocket的优缺点

大并发时传输量的减少,网络负载对比


图片来自:http://www.ibm.com/developerworks/cn/web/1112_huangxa_websocket/

 

时延减半:


图片来自:http://kb.cnblogs.com/page/58908/

 

缺点是现在规范的支持还不是很完善,浏览器的支持也非常的有限,并且需要服务器进行支持,不过这些都是可以慢慢的改进,找到确实的应用场景,还是可以用上去的

 

2.Web Socket客户端API:

onopen        请求握手成功后,回调方法(应用场景:用户登录后的提示)

onmessage  服务器端主动向服务器推送消息回调方法(由服务器向客户端推送消息)

onerror        连接过程出现异常时的回调

onclose        连接中断回调

 

当然,如果深入去理解的话,我们可以去看看html5 websocket的草案,看看请求头需要带的参数是什么,以遍以后出问题的时候可以查看。在IBM文档框上有一个文章写得挺好:《web socket 构建实时应用

 

3.Web Socket服务端API

web socket 的upgrade如下:

 

GET /demo HTTP/1.1 
Host: example.com 
Connection: Upgrade 
Sec-WebSocket-Key2: 12998 5 Y3 1 .P00 
Upgrade: WebSocket 
Sec-WebSocket-Key1: 4@1 46546xW%0l 1 5 
Origin: http://example.com 
[8-byte security key] 

 那么服务器端用C++或者是Python或者是Java都可以做这些事情

 

4.tomcat服务器的支持

在ITEYE上即可看到tomcat7.0.27版本已经添加了对websocket的支持:Apache Tomcat 7.0.27发布,支持websocket

 

tomcat7.0.27的文档已经说明了web socket尚处于草案阶段:tomcat7.0.27websocket文档

 

后续API还可能改变,不过现在如果是基于手机端的还是可以用得上吧,下了tomcat7.0.27,里面还有demo和demo的源码可以运行,非常不错的说,示例的源码在上述这个链接中,在控制台上输入http://localhost:8080,点击examples

 

 

参考:使用HTML5 WebSocket构建实时应用

  • 大小: 17.6 KB
  • 大小: 26.5 KB
分享到:
评论
1 楼 wahahachuang8 2018-02-28  
我觉得这种东西自己开发太麻烦了,就别自己捣鼓了,找个第三方,方便,GoEasy就挺不错的,我昨天试了一下,代码简洁易懂,几分钟我就洗了一个自己的实时推送功能;官网: http://goeasy.io/

相关推荐

Global site tag (gtag.js) - Google Analytics