在线协同编程平台一致性维护问题的研究与实现.docVIP

在线协同编程平台一致性维护问题的研究与实现.doc

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
在线协同编程平台一致性维护问题的研究与实现.doc

  在线协同编程平台一致性维护问题的研究与实现 第一章 绪论 1.1 研究背景与意义 近几年互联网技术的发展越来越快速,传统的生产和生活方式因为这些技术的发展产生了巨大的变化。新兴的技术使得一些之前必须在同地点同时进行的高交互活动现在可以通过联网的方式在不同地方在线实时完成。数据复制技术[1]是实时在线协同普遍使用的一种用来降低网络延迟、提高响应度和改善交互体验的技术。在数据复制技术的支持下,用户可以在各自客户端的数据副本上进行各种操作而不受限于网络延迟,因此这种优势就使得数据一致性维护的问题在数据复制技术使用中是不可避免的。同时网络技术的发展、L5、PHP、Python / Django、Ruby on Rails、C/C++、StrongLoop。Cloud9 提供了一个比较完善的编程功能,从开发到部署再到测试都可以在上面完成。更重要的是,Cloud9 支持多人实时协同开发,可以在开发过程中邀请其他开发者进行协作,并且内置了简单的聊天功能进行来方便多人之间的交流与合作。 ...... 第二章 相关理论介绍 2.1 操作转换 操作转换是一种用来支持协同计算功能和应用技术,操作转换具有很多协同特性并且已经广泛用户各自应用。第一个操作转换系统在 1989 年问世,被用来支持实时协同文档编辑的数据一致性维护工作。在之后几年中,第一个操作转换系统中的一些错误被检测出来,之后人们提出许多方法来改正这些错误。在 1998 年,一个协同编辑专家兴趣小组(SIGCE)成立致力于推动协同编辑和操作转换算法的交流和发展。操作转换技术能够满足许多协同计算的要求,比如:1. 一致性维护或者并发控制:在组文档编辑系统中,操作转换技术能够用来维护共享文档的一致性。组文档编辑系统中,多个用户可以自由地并发地对文档进行操作,系统会迅速地对用户的本地操作做出响应并且以不同的顺序执行远程操作[11]。2. 冲突处理:操作转换技术能够处理作用于共享文档的多个并发操作之间的冲突,在处理冲突的同时还能保证一致性的维护和操作效果的维护。3. 操作压缩:操作转换技术能够支持非实时或者移动环境下协同编辑系统中积累的大量操作的压缩工作。 .... 2.2 NodeJS Node.js 是构建在 Chrome#39;s JavaScript runtime 上的平台[19],实际上它是对 Google V8引擎(应用于 Google Chrome 浏览器)进行了封装,通过 Node.js 可以快速构建网络服务。Node.js 有如下优点:1. Node.js 使用事件驱动、异步编程的编程机制,很适合用来进行网络服务开发。2. Node.js 中的 IO 模式采用非阻塞的方式,非常适合用作依赖其它 IO 资源的中间层服务。3. Node.js 轻量高效,非常适合用于数据密集型应用和分布式实时应用。本章详细介绍了操作转换技术的特点、应用场景和应用实例,并且介绍了操作转换算法中的几个基本概念,这些概念是操作转换算法的核心基础。最后介绍了基于 GoogleV8 引擎的后端开发平台 NodeJS。本文将深入研究操作转换算法,实现一个协同文档编辑库 OTDomJS,并且分析移动终端环境和传统 PC 终端环境的差异,设计了一个基于操作转换的跨终端的一致性维护架构 M-OT。最后利用 OTDomJS 和 M-OT 实现了一个基于操作转换的在线实时协同编程平台 CoCodePlatform。 ..... 第三章 协同编程平台的分析.......15 3.1 用户管理模块........15 3.2 编程模块....16 3.3 聊天模块....17 3.4 移动设备....18 3.3 小结.....18 第四章 协同编程平台的设计.......19 4.1ABTS 操作转换算法.........19 4.2 操作转换控制算法......30 4.3 一致性维护架构....31 4.5 用户登录流程........33 4.6 编程模块....35 4.7 数据库........37 4.8 小结......39 第五章 协同编程平台的实现.......41 5.1 OTDomJS.........41 5.2 代码着色....44 5.3 多线程的支持........44 5.4 UserAgent........ 46 5.5 离线存储....46 5.6 服务器推送......48 5.7 平台效果.........49 5.9 小结......50 第六章 实验验证 本章将对前面实现的基于操作转换的在线实时协同编程平台CoCodePlatform进行实验验证其数据一致性维护的正确性以及对移动设备的兼容性。根据实验目的,本章实验分为两个部分,第一部分通过几个并发操作实验来验证 CoCod

文档评论(0)

ggkkppp + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档