这个问题更多的是寻找一个想法,而不是一个实现或技术解决方案。我想听听你如何解决这类问题(或任务)。
我有一个使用React & Meteor使用Javascript构建的应用程序。目前,每当客户端做一些事情,我们的服务器就会有一个Meteor调用,它将向MongoDB写入数据,其他每个客户端都会注意到这一变化(并会以某种方式作出响应)。这台自动取款机运转良好。现在,我想添加一个新功能,允许两个客户端相互通信(仅限于局域网--至少在第一个版本中如此)。举个例子:我有一个有四个客户的房间-- A,B,C和D,我想要匹配其中的两个,例如A&C。这种连接应该只存在于这两个客户之间,我希望尽量减少对我的服务器和流星呼叫的流量。(我的服务器不应该参与这个通信,除了可能每隔几分钟保存一些数据,但总的来说它应该在没有我的服务器的情况下工作)而且应该可以打开多个通信,如果A&C一起工作,B&D应该能够做同样的事情,此时传输的数据是JSON。
进一步的思考:a在我的which应用程序中按一个Button,这是一个React组件。与另一个也在寻找合作伙伴的人建立了联系(在上面的例子中)--某种文档/页面打开了,两者都可以实时或接近实时地处理同一个文档。在最坏的情况下:通信应该能够工作,而不需要连接到我的服务器(或者一般的Internet连接),但它不必这样做。
我第一次考虑使用套接字(SocketIO或其他类似的东西),例如A想使用C和C连接到A时创建一个服务器,但这在JS中有一些问题,我不确定这是否真的是解决这个问题的好方法。
我想听听其他的一些想法,也许我走错了方向。
发布于 2020-03-30 17:30:58
https://stackoverflow.com/questions/60929532
复制相似问题