摘要:随着互联网技术的发展,时至今日,其功能早已超越了设计者原有的初衷。人们越发的依赖互联网,正是由于这种依赖,使得互联网应用的需求日益繁复。最初的互联网信息集中,用户获取信息的方式局限于搜索,随着终端设备,如智能手机、平板电脑等的快速创新,促进了互联网的发展与进化。互联网更加贴近生产生活,而移动设备的便携性和随时性对互联网应用提出了新的要求。
本文以基于Web的实时数据推送系统的开发为背景,着重探讨面向Web应用的实时推送技术,研究数据推送的更优解决方案。实现了基于WebSocket实时通信的数据推送系统,本系统基于GoogleV8引擎的JavaScript运行环境Node.Js进行开发,内容涉及非关系型数据库Redis的构建、数据库消息发布与订阅、Node服务器的搭建、WebScoket通信技术的使用以及鉴权验证等。整个系统实现了数据库数据的实时监控,即在数据持久化的同时,主动向Web客户端进行推送数据,并在前端浏览器以图形化的方式进行展示。
关键词: 实时推送;Node.Js;WebSocket协议;Redis
目录
摘要
Abstract
1 绪论-1
1.1 课题研究背景-1
1.2 现状和发展趋势-1
1.3 研究方法-2
1.4 论文组织结构-2
2 相关技术基础-3
2.1 Web实时通信技术的演化-3
2.1.1 HTTP解决方案-4
2.1.2 AJAX短时轮询-4
2.1.3 AJAX长轮询(Comet)-5
2.2 HTML 5 WebSocket技术-5
2.3 socket.io-7
2.4 Node.Js-8
2.5 Redis-8
2.6 本章小结-9
3 系统分析与技术路线-10
3.1 总体需求-10
3.2 系统服务器需求-11
3.3 前端规划设计-11
3.3.1 React-11
3.3.2 Redux-12
3.4 后端规划设计-12
3.4.1 Node.Js服务器搭建-12
3.4.2 Redis数据库搭建-13
3.5 本章小结-14
4 系统的构建与实现-15
4.1 系统结构-15
4.2 服务器的搭建-15
4.2.1 开发环境配置-16
4.2.2 Express-16
4.3 服务端WebSocket-17
4.4 数据库搭建-18
4.4.1 数据库安装-18
4.4.2 数据库集群部署-19
4.4.3 绑定数据库与应用程序-20
4.5 数据广播及数据推送-21
4.6 浏览器端设计-22
4.6.1 client端socket连接-22
4.6.2 数据的图形化显示-24
4.7 本章小结-24
5 总结与展望-25
5.1 总结-25
5.2 展望-25
参 考 文 献-26
致 谢-27