【问题标题】:How to create multiple instances of nodejs server如何创建多个nodejs服务器实例
【发布时间】:2020-02-16 15:08:27
【问题描述】:

我正在构建一个notification application,其中每次触发事件时,关联的用户都会收到通知。我正在使用 NodeJs 的localstorage 来存储登录用户的信息。问题是当两个用户登录时,localstorage 值会被新的用户值覆盖。

我需要创建multiple instances of NodeJS server,以便每个用户都有自己的localStorage。

例如 如果两个用户使用凭据登录

{
userName:name1
}

和

{
userName:name2
}

然后应创建两个单独的 localStorage,一个具有 userName:name1,另一个具有 userName:name2。

我已经尝试了所有在线可用的解决方案,但我无法创建 NodeJS 服务器的多个状态。

提前致谢

【问题讨论】:

  • 可以使用redis来保存key/value对用户名
  • 我也建议你使用 redis,但如果你做的事情更复杂,那么你应该使用数据库,我建议你使用 NoSQL DB(firebase、mongodb、postgreSQL 等)。跨度>

标签: node.js express session chat multiple-users


【解决方案1】:

您不必为每个用户创建新服务器。取而代之的是 IP 地址和端口。这意味着可以唯一标识每个用户。您可以简单地在变量 client 之后命名用户的文件。

这里是示例代码

net.createServer((netSocket : net.Socket) => {
    netSocket.on('data', (data) => {
         var client = netSocket.remoteAddress + ':' + netSocket.remotePort;
    })
})

【讨论】:

    【解决方案2】:

    我无法创建多个 nodejs 实例,因此我将用户数据存储在会话存储中,并在每次触发请求时将其传递给 nodejs 服务器。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-12
      • 2023-03-25
      • 1970-01-01
      • 2017-02-13
      相关资源
      最近更新 更多