- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
【java技术】实现远程实通信【java技术】实现远程实时通信【java技术】实现远程实时通信【java技术】实现远程实时通信
实时通信
随着网络的迅速发展,实时通信的应用场景越来越多,比如聊天室、股票的幅度、火车票数量、最新微博列表、实时投票、即时消息、地理位置等等,虽然我们已经在使用这些应用,但是这些应用场景多数都是“伪实时”,我们并不是在数据发生变化时,第一时间拿到的。
传统“伪实时”和“实时”实现方案:
1、Ajax轮询 : 页面打开的后,通过一个定时器每间隔一段时间后使用Ajax往服务器端发送请求,试图拿到最新的数据,服务器进行返回,并且关闭连接;(实则就是客户端主动去找服务器端要最新数据,客户端不管服务器端是否真的有数据,都会去找服务器端要);
2、Ajax长轮询:页面打开的后,客户端向服务器端发出一个请求并打开一个连接,服务器端接收到这个请求后,并不是马上响应,而是等最新数据时才进行响应,服务器端响应完毕后,客户端再次发送一个请求;(实则就是客户端主动找服务器端要最新数据,服务器端如果有最新数据就进行响应,没有最新数据就一直等到有新数据才进行响应);
3、Flash Socket,Flash 内部有自己的Socket实现完成数据交换,再通过JavaScript 调用,从而达到实时传输目的。此方式比轮询更高效,多数的企业客服都是采用这种方案。不过必须保证浏览器安装了flash插件,不过手机浏览器几乎都不支持flash;
什么是WebSocket?
WebSocket是HTML5一种新的协议。它实现了客户端与服务器相互通信的办法。传统客户端与服务器端只能是客户端主动找服务器端拿数据,而服务器的无法主动把数据给客户端;而WebSocket则让服务器端把数据推给客户端;我们来看看一个现实生活中的例子:老板发的了一条消息:“全体人员明天加班”,传统方式:每一个员工需要主动的去公告栏获取这条信息,如果某一个员工没有去公告栏,那么就只有等着老板批斗,而WebSocket方式:每一个员工在上班的时候,一条明天加班的噩耗就来了,躲都躲不了;
结合交互图:
图 1. 传统 HTTP 请求响应客户端服务器交互图
图 2. WebSocket 请求响应客户端服务器交互图
对比传统HTTP与WebSocket 可以看出,传统方式客户端与服务器端交互都需要进行open/close,而WebSocket只要打开后就可以不端的进行交互,适合做实时通信;
NodeJS+Socket.io实时通信实战
NodeJS:服务器端运行JS的平台;
Socket.io: socket.io 是 websocket 公认标准框架;
使用NodeJS+Socket.io我们只需要执行少许的命令和代码就可以轻松的体验WebScoket强大功能;GO;
(注意:如果不node环境不知道如何搭建,可以查看我写NodeJs入门文章)
第一步新建NodeJs Web环境:
命令切换到项目目录
第二步添加socekt.io包:
第三步项目依赖包:
基础的Web环境已经搭建完毕了,你可以启动Web项目尝试访问;
浏览器中输入:http://localhost:3000; 检查是否有网页;
第四步让websocket处理请求
找到你项目目录下面的F:\node-websocket\bin\www文件,使用文本文件打开;
默认为:
修改为:
第五步修改页面添加消息列表和消息发送框:
页面位置:F:\nodeproject\socket-node\views\index.ejs
重启服务器,打开浏览器新建两个窗口http://localhost/ ,发送消息尝试一下;
源代码教育,专注IT教育培训
您可能关注的文档
- 《洋葱头历险记》阅读试题及案.《洋葱头历险记》阅读试题及答案.《洋葱头历险记》阅读试题及答案.《洋葱头历险记》阅读试题及答案..doc
- 《压力与情绪管理》(李虹老)《压力与情绪管理》(李虹老师)《压力与情绪管理》(李虹老师)《压力与情绪管理》(李虹老师).ppt
- 《养生与保健》作业答案《养与保健》作业答案《养生与保健》作业答案《养生与保健》作业答案.doc
- 《咬文嚼字》选出2013年大流行语《咬文嚼字》选出2013年十大流行语《咬文嚼字》选出2013年十大流行语《咬文嚼字》选出2013年十大流行语.doc
- 《药品管理法》第八十条的适《药品管理法》第八十条的适用《药品管理法》第八十条的适用《药品管理法》第八十条的适用.doc
- 《氧化剂和还原剂》第一课时氧化剂和还原剂》第一课时《氧化剂和还原剂》第一课时《氧化剂和还原剂》第一课时.ppt
- 《扬州慢》课件.ppt
- 《药事管理学》习题八《药事理学》习题八《药事管理学》习题八《药事管理学》习题八.doc
- 《药物治疗学》复习资料《药治疗学》复习资料《药物治疗学》复习资料《药物治疗学》复习资料.doc
- 《形象塑造与职场礼仪》(李)-中华讲师网《形象塑造与职场礼仪》(李旸)-中华讲师网《形象塑造与职场礼仪》(李旸)-中华讲师网《形象塑造与职场礼仪》(李旸)-中华讲师网.ppt
- 聚焦商业步行街改造的夜间消费市场潜力评估报告.docx
- 聚焦售后服务:2025年电商平台质量提升策略研究报告.docx
- 聚焦公路货运行业:2025年数字化转型升级与效率优化政策研究.docx
- 聚焦医疗美容行业2025:消费者心理需求与服务体验优化路径报告.docx
- 聚焦公路货运行业:2025年数字化转型升级与效率优化产业政策.docx
- 聚焦农村电商生态:2025年农产品电商发展现状与趋势报告.docx
- 聚焦农村电商生态构建:2025年农产品电商发展现状及创新路径报告.docx
- 聚焦区块链在2025年跨境支付领域的实践与突破研究报告.docx
- 聚焦农村青年返乡,2025年乡村振兴人才培育与就业创业研究.docx
- 聚焦医疗美容行业2025:消费者心理需求与服务创新解决方案报告.docx
文档评论(0)