草庐IT

socket_create

全部标签

python - 为什么在 Socket 和 TCP 上从 Redis 获取数据非常慢?

我有365集。每个都是指从2011-01-01到2012-01-01的一天。在每个SET中,我都有8000个值。它最多有3到5个字符,例如:271。当我在python中发出SMEMBERS命令时,大约需要17.7秒!redis-cli中的示例结果:$SMEMBERSprefix:2011-01-011)"2442"2)"5483"...7999)"7911"8000)"42968"在带有Redisversion='2.10.3'的python中,我使用套接字而不是TCP以获得更好的性能。INFO命令提供有关服务器、内存的以下信息:#Serverredis_version:2.8.19r

通过 SSL https 连接的 Laravel IO Socket 和 redis

目前有带laravel广播的IO套接字和redis完美运行。直到我在域上设置SSL证书。我在端口3001上运行了redis-server。然后有个socket.js设置监听3000我在页面上的JS我通过io('//{{$listen}}:3000').任何有关如何通过https实现此功能的指导都将非常有用。我可以只使用443作为端口吗?谢谢。我的socket.jsvarapp=require('express')();varhttp=require('http').Server(app);vario=require('socket.io')(http);varRedis=require

node.js - NodeJS + Cluster + Socket.IO 如何正确创建游戏房间?

我正在制作一个简单的游戏引擎,它实现了房间操作。我想了很多,但仍然怀疑我没有以正确的方式腾出房间。这是场景。1)有一个静态房间,用户可以在其中“注册”。2)注册一定数量的用户后,创建动态房间,将一定数量的用户放入该房间,让他们退出静态房间。因此,如果我们在多个实例中运行它,假设我们正在等待2个用户。2个用户加入静态房间->创建新房间(在redis中)->让这两个玩家进入那个房间(订阅)->让这些玩家离开静态房间(类队列系统)。现在我觉得是个问题。2个用户加入静态房间->在创建新房间之前,另一个玩家加入静态房间(不同Node实例)->创建新房间->将两个玩家移到那里->另一个实例仍然认为

Redisson.create 失败,出现 IllegalArgumentException : hostname can't be null

尝试使用Redisson连接到Redis(在Docker上)...简单的东西..Configconfig=newConfig();config.useSingleServer().setAddress("redis://192.168.99.100:6379");RedissonClientredisson=Redisson.create(config);//第3行但我收到此错误(在第3行)-我是否遗漏了什么?Exceptioninthread"main"java.lang.IllegalArgumentException:hostnamecan'tbenullatjava.net.I

express - 使用 Redis 和 JWT 的 Socket.io 用户 session

谁能帮我理解这部分代码:varauth=function(cb){return_.wrap(cb,function(fn,data){redis.get(email,function(err,id){if(!err)throwerr;if(!id)returnsocket.disconnect('unauthorized');fn(data);});});};我从这个article得到的.我不明白那里发生了什么,尽管我导航到lodash文档并阅读了“wrap”方法。我很困惑,尤其是因为我看不到文章中的什么地方进一步使用了这个“auth”!(我认为这毕竟被定义为在某处使用)。提前谢谢你。

node.js - 如何保护 Redis 和 Socket.IO 实时服务器,以便只有经过身份验证的用户才能收听?

我正在构建一个具有聊天功能的网络应用程序。我在后端使用Laravel5.4,在前端使用Angular4。一切正常(意味着我可以广播和接收),但我完全不确定如何保护它。聊天将始终是1对1,因此它是私密的并且必须是安全的。每个聊天室都有一个唯一的ID,但仍然有人可以收听。目前,当我从前端向我的API发出请求时,我正在使用JWT进行身份验证,但我不确定是否可以为此实现类似的东西。我知道我可以使用query选项从前端传递token,但我不确定如何解析它,我也不确定如何验证它确实属于正在尝试的用户访问聊天(我应该向API发出请求以在server.js中进行验证吗?这似乎效率不高。将token的用

php - 聊天系统db设计-一对一和群组-Laravel, redis, socket.io, node

我想知道如何为聊天系统-一对一和群组。我正在使用MySQL。我正在使用Laravel、redis、socket.io我只是创建简单的聊天来理解堆栈我是怎么工作的Client1msg->Laravel保存在db中并推送到redis->节点redis客户端监听->socket.io发送到->客户端2它如何用于群聊而不是实时聊天? 最佳答案 你可以用最少的列构建类似的东西聊天(一对一)id|message|message_type|sender|reciever|reply_to(optional)|created_at|updated_

node.js - Node js、socket.io、redis 和 pm2

我们的系统包括一个NodeJsRestfulAPI服务器。此服务器还用作套接字IO服务器。很多设备会通过socketio连接到服务器,用户可以通过调用restfulAPI来控制设备,服务器通过socketIO向设备传输命令。我们使用pm2对API服务器进行集群。你能帮助如何使用Redis.io服务器来支持从集群向特定套接字实例发送消息吗? 最佳答案 如果您已经设置了一个Redis服务器,您所要做的就是设置socket.io-redis适配器:https://www.npmjs.com/package/socket.io-redis从

redis-trib.rb 不再可用但 redis-cli --cluster create 抛出无法识别的选项错误

我正在尝试使用redis4.0.11在dockerswarm上创建一个新的redis集群。我找到的最接近的教程是这个:https://get-reddie.com/blog/redis4-cluster-docker-compose/我遇到的问题是,就像所有其他教程一样,在发现所有节点后使用ruby​​redis-trib.rb脚本创建集群,这个家伙似乎不再受支持:|WARNING:redis-trib.rbisnotlongeravailable!|Youshoulduseredis-cliinstead.||Allcommandsandfeaturesbelongingtoredi

mysql - ruby rails : Creating a model with multiple data sources

现在我的Rails应用程序配置为使用MySQL。但是假设我想创建一个新模型并将其存储在Redis和MySQL中。我知道有一种方法可以在database.yml中拥有多个数据源,但是有没有办法将模型映射到多个数据源?因此,当我创建模型的一个实例时,该模型会同时插入到MySQL和Redis中? 最佳答案 您可以只使用回调,例如:after_commit:saveToRedis,:on_create 关于mysql-rubyrails:Creatingamodelwithmultipledat