gpt4 book ai didi

javascript - Socket.io 客户端到客户端逻辑,有很多用户

转载 作者:太空宇宙 更新时间:2023-11-04 00:40:31 24 4
gpt4 key购买 nike

我正在尝试使用 socket.io 在我的应用程序中实现客户端到客户端的消息传递,和node.jsAndroid .

我搜索了一下,发现了很多教程,解释了通过 socket.io 发送消息时如何处理针对特定客户端的情况套接字。

Send message to specific client with socket.io and node.js

解决方案几乎总是相同的:创建一个 hashmap 对象,链接用户信息,例如其 username , email address (或任何独特的可以识别它的东西),其 socketid 。然后调用io.clients[sessionID].send()

现在我有两个问题:

  • 如果只有 app 的一个实例,这将起作用。正在运行,但想象一下如果我的应用程序分为多个实例(对于大型应用程序)。如果客户A怎么办? ,连接到实例X ,想要向用户 B 发送消息,连接到实例Z 。如示例所示,如果socketids直接存储在脚本中存在的简单对象中,某些套接字不会知道其他实例中存在的其他用户。

  • 如果我完全错了(我可能),那么这是存储所有用户的 socketids 的好习惯吗?在单个变量中?如果是的话,50000+用户的环境还可以吗?如果不是,我是否应该找到另一个解决方案,例如存储用户的 socketids在数据库中?

最佳答案

您可以使用在所有应用实例之间共享的 Redis 实例。一石两鸟。

redis 会将您所有的套接字 ID 存储在一个集中的位置。

关于javascript - Socket.io 客户端到客户端逻辑,有很多用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36999710/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com