论文部分内容阅读
在信息高度发达的今天,每时每刻都有大量的新信息被发布到互联网上,某一刻获取到的信息很可能在下一秒立即过时。面对这些时效性很强的信息,用户希望能实时获取这些信息的变化,一旦有新信息产生就能立即获取到。例如股民希望第一时间获取股票价格波动变化的情况,关注某新闻事件的用户希望第一时间获取事件的最最新信息等。现有的web实时应用在一定程度上解决了用户的需求,然后它不得不采用折中的方案。其中最常用的就是轮询(Polling)和Comet技术。这些目前我们所使用的所谓的实时技术并不是真正的实时技术,它们只是在用Ajax方式来模拟实时的效果。客户端与服务器端的每一次请求都带有完整的HTTP请求头信息,这增加了通信的数据量,同时这些解决方案的编程实现都比较复杂。HTML5WebSocket设计出来的目的就是要取代轮询和Comet技术,使客户端浏览器具备像C/S架构下桌面系统的实时通讯能力。由于WebSocket连接本质上就是一个TCP连接,所以在数据传输的稳定性和数据传输量的大小方面,和轮询以及Comet技术比较,具有很大的性能优势。Web实时数据同步的研究致力于找出一套可行的解决方案,让开发者更高效,更简单的实现web实时应用系统。首先,本文介绍了实现web实时数据模型同步的相关技术,为实现基于NodeJS和WebSocket的web实时数据模型同步的设计方案奠定了理论基础。其次,介绍了实现web实时数据同步的设计方案,主要包含了API设计,敏感信息的加密设计,DDP协议设计与实现,数据订阅发布模式,前端数据自动渲染机制,以及概述了总体的设计逻辑。最后介绍使用该设计方案实现婚庆互动墙实时应用的过程,并基于该应用对设计方案的高并发性能和提高开发效率特点进行验证。最后提出了该方案存在的问题和以后的研究方向。