0

我想实现类似于 Etherpad 的东西——一个在线协作程序。

您是否知道用于处理传入连接、管理用户列表并在它们之间分配结构化数据的服务器库?

DRb 接近我想要的,但据我了解,但据我了解,它通过网络反复发送整个对象,使其非常慢。它应该只发送更新。

Ruby 将是完美的,但我并不在乎。

4

1 回答 1

1

运营转型是您正在寻找的技术。但是,它不会管理您的传入连接和用户列表。它负责处理数据以及如何对它们执行更新。你有几个选择:

  1. 实现你自己的版本。根据协作需要的复杂程度,即是否涉及格式化或纯文本编辑,您可以遵循一些标准算法。http://cooffice.ntu.edu.sg/otfaq/

  2. Etherpad 是开源的,因此您可以随时查阅他们的代码库。如果您对实现背后的“理论”有所了解,将会有所帮助。再次,请参阅上一个链接。

  3. 您可能想尝试与 codoxware 的人联系。他们有一个非常复杂的操作转换库,支持多种编程语言。我还没有拿到副本(他们似乎已经结束了审判)所以我不能说它有多好。但他们已经使用它在 Word 中构建了非常复杂的协作。

于 2011-04-10T21:36:19.317 回答