0

我想尝试创建一个画布,让多个用户可以键入和编辑以进行头脑风暴等。我认为 php 作为后端。它使用了什么技术?例如,让我们说它的纯文本。我们如何更新 google wave(b4) 和 google doc 中的文本?

它只是使用 websocket(或 js 池)并更新文本文件吗?或者有没有更好的逻辑方法来解决这个问题?

4

2 回答 2

1

Websockets 是解决这个问题的方法。但是,它们很难在 PHP 中实现,并且目前还没有许多浏览器支持。您可以使用 PHP 轻松地对 AJAX 请求进行长轮询,但这可能会非常浪费资源。

这可能不是您想要的,但我建议您更改您的服务器端技术。您可以将Node.jsSocket.IO一起使用,以轻松使用 Websockets(或在不支持它们的浏览器上无缝地模拟它们)。这将为将数据推送给您的用户提供最快的方法。

于 2012-07-15T17:46:46.777 回答
1

好吧,这并不像布拉德回答中所说的那么容易,但他是部分正确的。你今天肯定需要 WebSockets 来实现它。但从逻辑上讲,创建协作环境并不是那么简单。存在诸如将每个用户的更改广播给查看同一文档的每个其他用户之类的问题。然后,您必须确保每个用户都能看到完全相同的内容,无论谁在何时更改什么内容。当多个用户协作处理同一个文档时,这会变得很困难。合并彼此的更改时可能会发生冲突。

就 PHP 而言,语言并不是真正的问题。它是如何处理上述问题的。

Google 在 Google Wave 上发布了其研究和工程细节(我猜是在放弃该项目之后)。此链接可能对您有所帮助:http ://www.waveprotocol.org/whitepapers/

于 2012-07-15T18:49:09.017 回答