问题标签 [socket.io-redis]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
23139 浏览

node.js - 如何在 socket.io 1.0 中存储客户端相关数据

文档说 socket.io 现在不支持 .get .set

是否可以存储客户端相关数据,例如

如果我需要多个节点?

0 投票
1 回答
2326 浏览

node.js - 如何使用 socket.io-redis 将消息发送到另一个 socket.io 服务器?

我需要有两个不同的 socket.io 服务器相互通信。我不能使用socket.io-client,因为它不区分browser to server连接和server to server连接。所以我正在尝试使用socket.io-redis.

一个是 express-socket.io 服务器,另一个是独立的 socket.io 服务器。两者都已配置为使用socket.io-redis适配器。我没有看到从 Server2 在 Server1 收到的消息。也没有错误。

服务器1:

服务器2:

0 投票
1 回答
2044 浏览

node.js - Making realtime datatable updates

I built an app which consumes data from a redis channel(sellers) with socketio and push the data in realtime to the frontend. The dataset could contain up to a thousand rows so I'm thinking about using a datatable to represent the data in a clean way. The table elements will be updated regularly, but there will be no rows to add/remove, only updates.

The problem I'm facing is that I don't know which would be the proper way to implement it due to my inexperience in the visualization ecosystem. I've been toying with d3js but I think It'll be too difficult to have something ready quickly and also tried using the datatables js library but I failed to see how to make the datatable realtime.

This is the code excerpt from the front end:

0 投票
4 回答
8496 浏览

node.js - Socket.io:如何使用 Socket.io-redis 适配器计算房间中的客户端

我开始使用具有多个节点的Socket.io构建聊天服务器。它使用Socket.io-redis将所有服务器和房间连接在一起以进行消息传递。

当客户端与服务器连接时,我将客户端加入某个房间。

所以我想获得连接到房间的客户数量"CLIENT_1"

但我只能从当前进程中获得连接。如何从通过 redis 适配器连接的所有服务器进程获得连接?

我已经解决了这个问题:

如何在具有多个节点和 socket.io-redis 的 socket.io 中检查套接字是否处于活动状态(已连接)

但这对我没有帮助。

感谢提前。

0 投票
2 回答
643 浏览

node.js - socket.io-redis 在heroku上给出错误

我正在尝试在 heroku 上部署我的应用程序。我在我的应用程序中添加了 redistogo 插件。它基于 node.js 和 express。

我写了一个小代码

但在最后一行我收到错误:

任何人都可以帮助我为什么遇到这个错误并摆脱这个错误。6379 是默认端口,但我的 redistogo url 没有 6379 端口号。它的端口号是 10281。

这是 socket.io-redis 模块中的错误还是我做错了什么?

0 投票
2 回答
1353 浏览

redis - Socket.io redis 数据如何存储和清除

我正在使用 socket.io 的 heroku 上托管一个应用程序。它正在使用套接字,我正在使用 heroku 4 标准 1X dynos 。所以为此我使用了 redistogo 服务和 socket.io-redis 插件。它工作得很好,但我想知道 socket.io-redis 在套接字断开连接时是否也会清除 redis db 中的数据。Heroku redis goto 服务仅提供 20MB 数据存储。.请指导socket.io-redis如何插入和清除redis数据库中的数据。

0 投票
0 回答
221 浏览

node.js - 使用 node.js 创建多端口 socket.io 服务器的分步说明

有人可以帮助我逐步指导创建多端口 socket.io node.js 服务器吗?

我目前的情况,我有 1 个 socket.io node.js 服务器和 1 个端口来服务数百个客户端。大约 1 年期间,连接的用户数最多为 400 个用户。我怀疑这个最大数量不能增加,因为服务器数量只有一个。

我想增加服务器的数量,我发现了一篇文章http://socket.io/docs/using-multiple-nodes/但我无法实现它,因为它对我来说太理论化了。我对服务器的了解太少了。

请帮助我逐步实施。我现在拥有的工具:一个可以连接到 centos VPS 服务器的腻子,该服务器存储所有基于 node.js、php 等构建的工作应用程序的编码。

0 投票
1 回答
4791 浏览

node.js - 关于 socket.io 适配器的问题

我目前正在开发一个基于 node.js 的socket.io服务,该服务利用node.js 集群模块在同一台机器上生成多个 node.js 进程。

socket.io 文档说,如果使用多个进程,则需要使用适配器,以便广播不仅针对连接到当前进程的客户端,而且针对每个进程的所有连接的客户端。

  1. 我是否理解正确,即使所有进程都是在本地生成的(即不是跨多个服务器),我也需要使用这样的适配器?
  2. 服务器进程需要时不时地进行通信(只是单向的,即广播消息而不需要响应)。如果正在使用这样的适配器(例如socket.io-redis),我可以使用它来广播到所有服务器进程吗?还是适配器仅用于连接的客户端?
0 投票
0 回答
74 浏览

node.js - 如何将socket.io加入服务器端的公共房间?

我在客户端上有下一个代码:

服务器端必须有什么代码才能将当前用户添加到房间eventNameListen[i]

我试过了:

0 投票
1 回答
302 浏览

node.js - Socket 只能与一个 socket.io 进程通信

您好,我正在尝试使用 nodejs 和 socket.io 制作多人游戏。我正在使用带有集群和 socket.io-redis 的多进程 socket.io。如果你想广播消息、发射等,它工作得很好。

但是如果我想在我的代码中增加一些复杂性,问题就会开始出现。我希望我的游戏有匹配功能。

假设这种情况:服务器找到 2 个想要玩并开始游戏的用户。用户在同一台​​机器上的不同进程上。问题是客户端只能与第一个进入的进程进行通信。因此,我认为有 3 种可能的解决方案:

  1. 与处于同一进程中的用户进行匹配 --- 不好。
  2. 在进程之间创建一个 ipc 方法,以便具有目标客户端的那个可以将客户端的答案广播到正确的进程 --- 太复杂,不确定是否能解决所有问题。
  3. 在用户没有注意到的情况下将客户端的 socket.io 进程更改为新进程 --- 不确定这是否可能。

我在这里缺少什么吗?还有其他我想不到的解决方案吗?

任何帮助表示赞赏!