如何在 Node.js 中为协作编辑系统路由流量

如何在 Node.js 中为协作编辑系统路由流量

我有一个 Node.js 应用程序,它使用 sockets.io 允许多个用户同时编辑同一个文档(有点像 Google Docs)。

我想水平扩展它,但我却不知道如何确保编辑特定文档的所有用户最终连接到同一个 Node.js 实例。

例如,假设有 2 个文档(doc-Adoc-B)和两台服务器(server-1server-2)。有人连接并开始doc-A在 上编辑server-1。另一个用户连接,也想编辑doc-A。必须将它们发送到server-1以确保文档保持一致。最后,第三个用户连接想要编辑doc-B。我们可以将它们发送到任一服务器,因为目前没有人在编辑该文档。

我相信每个协作编辑体验都必须解决这个问题,但我不知道该怎么做。有人能帮忙吗?

相关内容