Citrea和swarm:浏览器中部分排序的op日志:在JavaScript中实现协作编辑器和对象同步库

PaPEC '14 Pub Date : 2014-04-13 DOI:10.1145/2596631.2596641
V. Grishchenko
{"title":"Citrea和swarm:浏览器中部分排序的op日志:在JavaScript中实现协作编辑器和对象同步库","authors":"V. Grishchenko","doi":"10.1145/2596631.2596641","DOIUrl":null,"url":null,"abstract":"Principles of eventual consistency are normally applied in large-scale distributed systems. I report experiences applying EC in Web app development. Citrea is a collaborative rich text editor employing the Causal Trees[4] technology of concurrency/version control (note: CT is not an OT flavor). CT employs symbol ids and trees and, generally, belongs to the same family as WOOT, Logoot or Treedoc [1--3]. CT makes the ids-and-trees approach production-practical by limiting itself to simple and lightweight algorithms and data structures. Swarm is a JavaScript object sync library that works in the browser, in real time. Swarm fully employs client-side storage and works well under intermittent connectivity. Swarm employs \"pure\" op-based model, although I find that state- vs op-based separation is rather bogus in practice. Our top finding is a specifier, a serialized event description format that enables straightforward operation storage, caching and exchange.","PeriodicalId":354287,"journal":{"name":"PaPEC '14","volume":"23 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2014-04-13","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"7","resultStr":"{\"title\":\"Citrea and swarm: partially ordered op logs in the browser: implementing a collaborative editor and an object sync library in JavaScript\",\"authors\":\"V. Grishchenko\",\"doi\":\"10.1145/2596631.2596641\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Principles of eventual consistency are normally applied in large-scale distributed systems. I report experiences applying EC in Web app development. Citrea is a collaborative rich text editor employing the Causal Trees[4] technology of concurrency/version control (note: CT is not an OT flavor). CT employs symbol ids and trees and, generally, belongs to the same family as WOOT, Logoot or Treedoc [1--3]. CT makes the ids-and-trees approach production-practical by limiting itself to simple and lightweight algorithms and data structures. Swarm is a JavaScript object sync library that works in the browser, in real time. Swarm fully employs client-side storage and works well under intermittent connectivity. Swarm employs \\\"pure\\\" op-based model, although I find that state- vs op-based separation is rather bogus in practice. Our top finding is a specifier, a serialized event description format that enables straightforward operation storage, caching and exchange.\",\"PeriodicalId\":354287,\"journal\":{\"name\":\"PaPEC '14\",\"volume\":\"23 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2014-04-13\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"7\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"PaPEC '14\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1145/2596631.2596641\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"PaPEC '14","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/2596631.2596641","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 7

摘要

最终一致性原则通常应用于大规模分布式系统。我报告了在Web应用程序开发中应用电子商务的经验。Citrea是一个采用因果树[4]并发/版本控制技术的协作式富文本编辑器(注意:CT不是OT风格的)。CT采用符号id和树,一般与WOOT、Logoot或Treedoc属于同一家族[1—3]。CT通过将自身限制在简单、轻量级的算法和数据结构上,使ids-and-tree接近生产实用。Swarm是一个JavaScript对象同步库,可以在浏览器中实时运行。Swarm充分利用了客户端存储,在间歇性连接下也能很好地工作。Swarm采用了“纯”基于操作的模型,尽管我发现基于状态和基于操作的分离在实践中是相当虚假的。我们最重要的发现是一个说明符,一种序列化的事件描述格式,它支持简单的操作存储、缓存和交换。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
Citrea and swarm: partially ordered op logs in the browser: implementing a collaborative editor and an object sync library in JavaScript
Principles of eventual consistency are normally applied in large-scale distributed systems. I report experiences applying EC in Web app development. Citrea is a collaborative rich text editor employing the Causal Trees[4] technology of concurrency/version control (note: CT is not an OT flavor). CT employs symbol ids and trees and, generally, belongs to the same family as WOOT, Logoot or Treedoc [1--3]. CT makes the ids-and-trees approach production-practical by limiting itself to simple and lightweight algorithms and data structures. Swarm is a JavaScript object sync library that works in the browser, in real time. Swarm fully employs client-side storage and works well under intermittent connectivity. Swarm employs "pure" op-based model, although I find that state- vs op-based separation is rather bogus in practice. Our top finding is a specifier, a serialized event description format that enables straightforward operation storage, caching and exchange.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信