草庐IT

node.js - 在 Redis 中存储对象(nodeJS)有很多变化

我很难理解如何从我的nodejs服务器中获得分离状态。如果想运行共享相同状态的多个nodejs实例,我为此使用Redis,但我有很多对象需要存储并非常频繁地获取(可能有很多设置/获取,比如10例如,同一给定对象上的毫秒数)。Redis以字符串形式存储内容,所以我每次都必须对它进行json编码/解码,而且我认为它对于每隔几毫秒就会更改的对象来说速度不快或不合适。我只有一个nodejs实例,我可以将我的对象存储在一个var中,它足够快,但在这种情况下我不能,所以我是否仍应继续使用redis或其他替代方案?或者我应该分解我所有的对象键并将其单独存储在redis中吗?那会不会太过分了?我说的是

node.js - NodeJS - Promise 在 redis 池等待中返回 undefined object

我有一个从redis-connection-pool创建的Redis池对象。它寻找一个键来获取所有图像标识符的数组。然后,对于每个元素,都会查找另一个Redis键,以便将值附加到一个JSON对象中。此对象作为对GET请求的响应返回。由于某些奇怪的原因(也许是Redis错误?),虽然使用正确的数据解析了Promise,但使用此Promise的函数总是看到一个undefined对象。原创尝试asyncfunctionallImageData(){varconfigPool=redisPools.configPool;varresp={};varimages=[];varimageDetai

node.js - nodejs延迟执行redis命令

我想从nodejs应用程序执行一些redis操作,每次执行之间有一些给定的延迟。我正在使用node_redis客户。Node版本v8.10.0我想像下面这样实现它:functionfunc(id1,max){for(i=0;i{if(error){console.log("redisincrfailed:"+error);returnerror;}console.log("updatedvalue:"+value);});sleep.sleep(1);}client.quit();return("incrvalueendedfor:"+id);}func(id1,max);但是在这种情

node.js - 从 ECS 集群中的 docker nodejs EC2 容器连接到 Redis Elasticache 集群

我正在构建一个身份验证服务器,用于存储用户访问token并跟踪它们我想使用redis。我已经成功创建并部署了一个小的nodejs应用程序,并将其包装到一个只返回token的docker容器中。然后我将它推送到AWS中的ECR存储库并创建了一个运行的任务和完美运行的EC2实例。到目前为止一切顺利。当我尝试连接到我创建的集群时,问题就来了。我正在使用thisnodejsredismodule,效果很好。我已经更改了VPC,因此所有集群和实例都处于相同的网络配置下。也许这就是我搞砸的地方,因为我不是部署方面的专家,更不是网络安全组方面的专家。此外,我已经成功地从同一VPC下的另一个EC2实例

node.js - 对 Redis 数据库的异步 NodeJS 请求

我需要向Redis数据库发出多个请求,并且我需要一个请求的响应才能执行下一个请求。我们来分析一下这个例子:(我使用node_redis作为请求)varmessage-id=undefined;//requestthenextidclient.incr("message-id",function(err,id){message-id=id;});//usethe'nextid'forstoringamessageclient.hmset("messages",message-id,messageContent);这种方式行不通,因为当我调用client.hmdet()时message-i

node.js - 当通过来自 NodeJS 服务器的单个连接使用 Redis 时,我可以做哪些假设

我在一个NodeJS实例上使用SocketIO,它有一个到Redis缓存的单一连接。此缓存用作在实时环境中维护状态的一种方式。我的前提包括并发问题可能会由于发生大量交易而发生,但是,我不确定我需要考虑哪些并发问题...我的初始设计使用Lua脚本和EVAL(使用EVAL调用的脚本被认为是Redis的原子事务)来实现对给定状态的检查键,但除此之外,我不确定是否需要在其他任何地方实现锁。我主要担心的是,当SocketIO捕获一个连接并随后执行一个事件时,我可以保证在该事件中发生的RedisEVAL是什么。一个特定的用例:1)客户端A发出一个事件被服务器捕获2)服务器执行请求的事件,包括调用E

node.js - CakePhp 3.x 使用 redis 与 nodejs 共享 session

好吧,我一直在关注这个使用redis在php和nodejs之间共享session的示例:https://gist.github.com/mscdex/9507b0d8df42e0aec825我的工作很顺利,但现在我想看看如何使用CakePhp来实现它。我有几个关于我将如何去做的问题:我是否应该只创建一个新的session处理程序并在构造函数中运行我需要在session开始之前执行的session配置?我是否应该创建一个新的Session.php类,扩展自CakePhp提供的类?如果我这样做,我将如何让应用程序使用它?上面链接的代码:varexpress=require('express

javascript - 如何使用 ioredis 在 nodejs 中链接返回?

我正在使用ioredis我想返回下面示例中的路径和值,一直到匿名函数。console.log(function(jsonGraphArg){returnRedis.hget(jsonGraphArg[0],jsonGraphArg[1],function(error,result){result=JSON.parse(result);return{path:[jsonGraphArg[0],jsonGraphArg[1],jsonGraphArg[2][0]],value:result[jsonGraphArg[2][0]]};});});我希望console.log()中的结果是这样

node.js - Redis -nodejs 简单程序 -ERROR

即使是简单的nodejsredis命令,我也会收到错误消息。这是我遇到的错误。/home/veera/Radha/node_modules/redis-client/lib/redis-client.js:394varcallback=originalCommand[originalCommand.length-1];^类型错误:无法读取未定义的属性“长度”在Client.onReply_(/home/veera/Radha/node_modules/redis-client/lib/redis-client.js:394:51)在maybeCallbackWithReply(/hom

node.js - 无法从 NodeJS 服务器调用 Rails 端点(从 Redis pmessage 事件中)

Node版本:0.10.33我能够成功地使用CURL从CLI发出我的POST请求并获得201响应,以及在Chrome中使用Postman获得成功的201响应,但是当我尝试发出POST请求时从NodeJS,使用http模块,或request第三方库,我从Node收到此错误消息:error:Error:connectECONNREFUSEDaterrnoException(net.js:904:11)atObject.afterConnect[asoncomplete](net.js:895:19)而且我根本没有从Rails获得任何日志(好像由于某种原因Node没有找到Rails)。我尝试