Javascript 使用.volatile标志或更短但';不可伪造的';?

Javascript 使用.volatile标志或更短但';不可伪造的';?,javascript,node.js,socket.io,Javascript,Node.js,Socket.io,我想制作一个依赖于socket.io提供实时协作编辑的应用程序,我想知道以下哪种情况更好/更快: <textarea id="some-id" onkeypress="broadcast()" ... >Type your text here</textarea> 在此处键入文本 每次进行更改时,客户机都会使用volatile标志广播整个输入,因此如果消息丢失,下一条消息将替换它 每次进行更改时,客户端仅广播该更改,其他客户端应用该更改 另外,是否有其他API/框

我想制作一个依赖于socket.io提供实时协作编辑的应用程序,我想知道以下哪种情况更好/更快:

<textarea id="some-id" onkeypress="broadcast()" ... >Type your text here</textarea>
在此处键入文本
  • 每次进行更改时,客户机都会使用volatile标志广播整个输入,因此如果消息丢失,下一条消息将替换它
  • 每次进行更改时,客户端仅广播该更改,其他客户端应用该更改
另外,是否有其他API/框架/插件可以代替socket io用于协作文档编辑?

谢谢。

在你发布这篇文章一年后,让我来回答你的问题,因为你现在可能已经很不耐烦了

我想你最好只寄零钱

  • 如果两个人同时键入,即使延迟很低,如果覆盖所有内容,也会丢失数据。这是不能接受的
  • 如果没有volatile标志,延迟将非常低,大约只有几分之一秒。(当然,这也取决于用户的连接)。远程人员可能不会注意到这些微小的延迟
  • 文档可能会变大,因此,如果有人正在愉快地键入一个大文档,那么您将发送大量数据,这是没有效率的

IO非常适合这项工作:它具有很好的跨浏览器兼容性,并且开销可以接受。如果您只针对支持HTML5的Websocket的浏览器,那么可以使用for node.js