大家好,感谢您的宝贵时间和帮助。
我需要一个使用socket.io-redis的简单示例,请提供注释。我阅读了文档,但听不懂。谢谢,
socket.io-redis文档没有提到您实际上需要运行redis服务器,因此您可能已经忘记了这一点。socket.io-
redis插件使用redis服务器的pub / sub客户端连接多个socket.io实例。
var express = require('express');
var app = express();
var server = require('http').Server(app);
var io = require('socket.io')(server);
var redis = require('socket.io-redis');
io.adapter(redis({ host: 'localhost', port: 6379 }));
6379是默认的redis端口,如果在同一服务器上运行node和redis,则为localhost。
var your_namespace_socket = io.of('/your-namespace');
your_namespace_socket.on('connection', function(socket){
socket.on('join', function(room){
socket.join(room);
//log other socket.io-id's in the room
your_namespace_socket.adapter.clients([room], (err, clients) => {
console.log(clients);
});
});
});
server.listen(3000, function(){
logger.debug('listening on *:3000');
});
问题内容: 我正在尝试在多个进程和/或服务器上扩展一个简单的socket.io应用程序。 Socket.io支持RedisStore,但是我对如何使用它感到困惑。 我正在看这个例子, http://www.ranu.com.ar/post/50418940422/redisstore-and-rooms-with- socket-io 但是我不明白在该代码中使用RedisStore与使用Memor
拉威尔5.6 我正在尝试创建一个实时应用程序。我遵循了在谷歌上找到的教程,但它似乎不起作用。我不明白为什么,因为它在控制台中没有显示错误。 在config/app中。php 这是我的活动 这是我的控制器 在我的引导程序的底部。js 我的laravel-echo-server.json 我的聊天组件。vue 如果有人知道这个问题的解决方案。请帮忙。非常感谢你!
问题内容: 这是我使用socket.io作为WebSocket并使用pub / sub redis后端的代码。 每个新的io请求都将创建新的Redis连接。如果有人打开带有100个选项卡的浏览器,则Redis客户端将打开100个连接。看起来不太好。 如果Cookie相同,是否可以重用Redis连接?因此,如果有人打开许多浏览器选项卡,也将其视为打开1连接。 问题答案: 实际上,如果要在“连接”事件
我试图提供静态文件的ngin x 1.6和代理套接字流量来自Node.js网络服务器与socket.io。 这是nginx.conf的相关部分: 它直接在浏览器和 Node.js 之间完美运行,但使用 nginx 1.6 代理时 socket.io 时间太长。握手协议需要太多时间,但如果不间断,它最终会在几分钟后开始工作。 nginx的静态文件交付工作得很好。 会有什么问题呢? 更新: 我分析了一
问题内容: 我想为我的项目构建一个实时聊天系统,但实际上我在使用Redis时遇到了一些问题,因为我希望尽可能地更好地存储数据。 我的问题: 我想使用Socket Io在一个封闭的小组(两个人)中进行实时聊天,但是如何存储消息呢? Redis是一个键值存储,这意味着如果我要存储某些内容,则需要在存储之前向数据添加唯一键。 如果同一用户发布多个消息,那么我将在redis中使用哪些键?我正在考虑将唯一I
问题内容: 所以我试图让Session在我的socket.on(’connection’,…)内部工作,我试图使用最新版本进行工作:Socket.io-0.9.13,Express-3.1.0和最新版本其他模块。 无论如何,我都尝试过使用两个模块’ connect-redis ‘和’ session.socket.io ‘,它们都有类似的问题。 在我的代码中,我有2个redis存储(socketi