如何实现可多人协作的“在线excel”系统?

  • 时间:
  • 浏览:0
  • 来源:5分赛车官网-5分时时彩平台_大发6合网投平台

多人公司媒体合作 在线文档的概念,最早由GoogleDocs带入中国。但实际上,在日常工作中,与团队的自己进行公司媒体合作 是本身在常见不过的工作最好的办法 。后后工作分工、工作进展的不同,团队内部内部结构的信息往往须要及时同步,然而伴随着

多人公司媒体合作 在线文档的概念,最早由Google Docs带入中国。但实际上,在日常工作中,与团队的自己进行公司媒体合作 是本身在常见不过的工作最好的办法 。

后后工作分工、工作进展的不同,团队内部内部结构的信息往往须要及时同步,然而伴随着团队经营规模的不断扩大,在线协同、多人公司媒体合作 ,以及软件项目管理等大大问题后后接踵而至,成为制约企业高效发展的瓶颈。

哪些地方地方大大问题,通常表现为:

1.       跨部门、地区公司媒体合作 不便

2.       过度依赖文件夹共享的形式,必须确保文档的安全性

3.       没哟纪录和体现职工对文本文档的意见和评价

4.       文档记录占据 变更时,无法及时通知到相关部门和员工

5.       文档无法在线协同编辑,缺失必要的流程管控

6.       多人一并编辑两个文档,无法留存修改记录和历史版本

针对上述大大问题,目前最佳的解决方案是:使用一款可多人在线协同办公的软件或工具。市面上,这一软件有一点,比如国外的Google Docs、Office365,以及国内的腾讯文档、石墨文档、有道云公司媒体合作 等。

本文将不再很多赘述这一成品软件,而是深入协同办公系统的实现原理,从企业IT管理者的厚度出发,深入研究多人公司媒体合作 的形式、基础和难点,分析一款开发工具应具备如保的特点,才是实现多人公司媒体合作 “在线excel”系统的关键。

以下内容,节选自红心红心红心红心猕猴桃 城公开课《如保实现可多人公司媒体合作 的“在线excel”系统?》,欢迎亲们提前预约,届时观看:https://live.vhall.com/483759540



多人公司媒体合作 的形式:历史与发展

多人公司媒体合作 的历史十分悠久,起源于静态的多人公司媒体合作 模式,即每自己先完成自己的工作,就让再进行汇总。

静态的多人公司媒体合作 模式

•       递增式公司媒体合作

•       邮件:你来我往

•       论坛:跟帖回复

•       独占式公司媒体合作

•       文档传递

•       微软VSS

•       合并式公司媒体合作

•       SVN

•       Git

•       diff,patch,merge指令



常见的静态多人公司媒体合作 最好的办法

从静态到动态

•       静态公司媒体合作 的呼告

•       拼接画

•       积木

•       静态公司媒体合作 的特点

•       多版本

•       块操作

•       有公司媒体合作 动作

•       静态公司媒体合作 的缺点

•       版本碎片化

•       过高 时效性

•       公司媒体合作 动作成本高

静态多人公司媒体合作 的成本,会随着加入人数和项目的多样化度呈几何级数的增长。就让,对于企业来说,急需本身无公司媒体合作 动作、唯一版本、版本可控的无公司媒体合作 成本模式,即动态多人公司媒体合作 模式。

动态的多人公司媒体合作

•       动态公司媒体合作 的呼告

•       一并画黑板

•       动态公司媒体合作 的特点

•       唯一版本

•       原子操作

•       无公司媒体合作 动作

•       动态公司媒体合作 的优点

•       版本可控

•       实时

•       无公司媒体合作 成本

•       典型产品

•       Office Online

•       石墨

•       OnlyOffice

多人公司媒体合作 的基础:原理与架构

任何信息,无论其是哪些地方展现形式,后后要做到多人实时编辑与展现,只须要实现以下三步而已:

1.       操作化

2.       可传输

3.       可还原

 举例说明多人公司媒体合作 的实现最好的办法

操作化

操作化,指任何信息都都都都能不能 转换为一组操作的集合。很容易理解,但它仍有不少值得思考的点:

1.       分割与组合

·       如保保证:信息的所有变化都都都都能不能 分解为操作的集合?反之,操作如保覆盖出信息的所有变化?

·       分割的颗粒度如保决定?

•       粗一点?

•       细一点?

•       如保兼顾解释性与扩展性?

2.       绝对操作与相对操作

·       绝对操作

•       针孔打印机的完美世界

•       打印机时代的编辑噩梦

·       相对操作

•       4K电视全是梦

•       为哪些地方数字电视稳定性不如模拟电视

·       绝对操作与相对操作呼告:时间与空间的互换

3.       使用一款开发工具:SpreadJS,实现操作化的优势:

·       好用的指令集,保证覆盖信息的完整性变化与操作的集合

·       经过实践验证的颗粒度,完美兼顾解释性与扩展性平衡

可传输

可传输,而是指操作有最好的办法 通过网络传输给一点终端。实现动态多人公司媒体合作 ,须要考虑以下几点:

1.       传输内容

·       原始文本

•       清晰

•       冗余

·       压缩技术

•       逻辑压缩

•       协议压缩

•       手动压缩

2.       网络协议

·       Socket

•       TCP

•       UDP

·       HTTP

·       WebSocket

3.       QoS(Quality of Service,服务质量)

·       快速失败

·       自动回滚

·       自动重连

·       自动恢复

可还原

可还原,而是指接收到来自网络的操作消息后,都都都能不能 在本地完整性一致地再次执行该操作。可还原包括了:

1.       绝对操作的还原

·       控制体积

·       合理的提示

2.       相对操作的还原

·       严格的顺序性

·       从源头保障顺序性

·       顺序性的解决

3.       本地操作的还原

·       过滤收到的操作集合

·       从源头细化操作颗粒

·       本地保存本地执行

4.       无入侵的还原

·       定义入侵

·       排除入侵

·       千人千面

多人公司媒体合作 的难点:乱序与冲突

乱序

乱序的表现形式如下图,小明在客户端执行了一系列操作,传递到服务器时占据 乱序,由于 小花看到了截然不同的信息:

 为了解决乱序大大问题,都都都能不能 尝试以下最好的办法 :

1. 用性能换取顺序正确——基于协议

2. 用性能换取顺序正确——基于回执

本身最好的办法 的优缺点

1.       基于协议

•       优点

·       可靠,历经考验

·       简单,前会开发

•       缺点

·       资源开销高

·       须要整套使用

2.       基于回执

•       优点

·       自主可控,按需开发

·       资源开销可控

•       缺点

·       须要自己投入开发

·       应用层逻辑控制使得网络多样化度向外蔓延

·       多样化度带来维护成本

基于乱序解决最好的办法 的总结

网络全是绝对可靠的,为了实现相对可靠,须要付出一定的代价,企业须要考虑的是:如保衡量所付出的代价与产出成正比。

冲突

比乱序更高级的本身表现形式,占据 多向、多维度等大大问题。

如保解决错误的蔓延?

原则:任何一次不一致,全是由于 后续的操作基于错误的信息进行,从而不断扩大错误,造成无法收拾的结果。就让,不一致是必须被容忍的。

解决最好的办法 :

1.       严格一致性:独占

2.       最终一致性:检查与修复

3.       非技术手段:设计与提示

严格的一致性

独占而是同一时间同一范围必须由一人操作。

1.       范围(以SpreadJS为例)

1.       整个表格,这一VSS

2.       工作表

3.       单元格范围

2.       排他性

1.       独占冲突时,必有一方被弹开

2.       直到占有者解开,不然无法占用

3.       占用前无法操作

4.       原理和锁基本一致

3.       优点

1.       都都都能不能 确保严格一致性,前会产生多版本的错误主次

2.       比起修复恢复这一弥补手段,一开始英语 英语 就没哟错的成本最低

3.       逻辑清楚简单,开发维护成本低

4.       缺点

1.       静态公司媒体合作 的味道

2.       独占动作严重影响体验

3.       大幅降低公司媒体合作 厚度

5.       SpreadJS提供的支持

1.       锁定工作表

2.       锁定单元格

最终一致性

基于唯一正确顺序,察觉客户端的错误,撤回错误操作后重新执行正确的操作。

1.       唯一正确

1.       服务器到达顺序

2.       公司媒体合作 边界分流

3.       P2P+选举算法

2.       察觉错误

1.       服务器回执id

2.       服务器回执操作,MS

3.       撤回错误

1.       撤回到错误占据 前的一步操作的结果

2.       利用SpreadJS的撤回功能

3.       利用操作版本快照

4.       重新执行

1.       操作队列需保存

2.       区分好无感知执行与显式执行

非技术手段

技术手段追求错误0占据 ,而非技术手段则都都都能不能 降低错误占据 的后后性。

1.       选中框

1.       非常重要但不显眼

2.       人性化的独占

3.       操作的预期

4.       公司媒体合作 感

5.       SpreadJS提供厚度可自定义的边框

2.       公司媒体合作 设计

1.       设计公司媒体合作 区域与合并手段

2.       设置权限

3.       SpreadJS提供几乎Excel的所有公式

4.       SpreadJS提供了工作表和单元格锁定功能

3.       单向公司媒体合作

1.       区分单向与双向公司媒体合作 的场景

2.       对单向公司媒体合作 尽量放开

3.       对双向公司媒体合作 严谨设计

针对多人公司媒体合作 难点的总结

首先,都都都能不能 明确一点:SpreadJS完整性都都都能不能 用作多人公司媒体合作 系统开发的组件。由于 在于:

•       SpreadJS的产品质量是毋庸置疑的

•       SpreadJS在设计之初,便考虑到了多人公司媒体合作 的后后,而除此之外,绝大多数的前端产品都全是为了多人公司媒体合作 而设计的

•       多人公司媒体合作 须要中心系统的支持,SpreadJS基于纯前端的体系架构都都都能不能 很容易的嵌入系统开发,而前会很多考虑与原生系统的兼容性,这是常规组件是无法做到的

•       要实现多人公司媒体合作 ,须要投入一定的开发成本,SpreadJS作为一款开发工具,都都都能不能 有效帮助开发人员减轻代码量

多人公司媒体合作 表格的本质:

•        Server – Clients 中心系统,这一数值敏感的小型网游

•       任何这一系统全是在体验和正确性中寻求平衡

多人公司媒体合作 表格的特点:

•       表格的数值敏感性高于网游,数据操作和存储的挑战更大

•       表格的计算多样化度更高,尤其涉及多样化公式嵌套与全量统计筛选

•       Web占据 天花板,一点多样化的页游并非多见,端游较多

对SpreadJS这一开发工具/组件的展望与期待

1.       SpreadJS 后后都都都能不能 很好地支持多人公司媒体合作 的最终一致性。都能不能 能支持多人多撤回队列,后后撤回重做自定义,没哟就都都都能不能 给用户提供更加易用且多样化的体验效果,从此丝般顺滑全是梦。

2.       SpreadJS的绝大主次功能是支持命令的,这使得操作化变得更简单。后后SpreadJS能开放命令自定义,便都都都能不能 让自主控制颗粒度成为后后,用户都都都能不能 针对具体的业务逻辑做出更加精细化的操作转换,大幅提高公司媒体合作 厚度。

3.       SpreadJS不仅在数据录入、数据填报等方面表现出强大的功能,其各类统计分析与图形化手段也是两个不少,一旦明年的透视表功能上线,使用SpreadJS开发在线协同系统的数据商业价值将更易体现,用户将体验到“表格”无限的魅力与威力。

4.       表格在多人公司媒体合作 中的数据量增长厚度比单人使用时快得多,希望SpreadJS都都都能不能 支持更大的数据量,尤其是在大数据量情况报告下仍旧保持操作的性能与体验。

以上而是本期公开课《如保实现可多人公司媒体合作 的“在线excel”系统?》的主次摘要,后后您对在线公司媒体合作 系统的开发感兴趣,欢迎点击预约,届时收看