草庐IT

nodes_alive

全部标签

node.js - 在 node.js 中监听 channel redis

有这么简单的代码窃听萝卜channel。redisClient=redis.createClient();redisDummyPublishClient=redis.createClient();//redisClient.auth("25c9721b4e579fc5af961f944e23f46f");//lookforconnectionerrorsandlogredisClient.on("error",function(err){console.log("errorevent-"+redisClient.host+":"+redisClient.port+"-"+err);})

node.js - redis高并发插入

我尝试将评论存储在redis数据库中。我的数据结构:z列出我持有commentId的位置。让我们commentId=3。并像comment:3一样散列评论文本、ip、useragent和评论时间。当我做zadd首先我从中得到最大的Id,然后加1-这将是新的Id。同时添加2条评论时出现问题。他们都可以获得相同的Id,然后在哈希表中,一条评论可能会丢失。那么如何在高并发下不重复计算newId呢? 最佳答案 将您的两步程序包装在aLuascript中并称之为。因为redis是单线程的,所以lua脚本调用将被序列化(=无竞争条件)。备选或者

javascript - 如何将 Node 变量传递给外部javascript?

我想在node.js加载的html文件中使用Node变量。这是我的代码。varcord=['37.772323,-122.214897','21.291982,-157.821856','-18.142599,178.431','-27.46758,153.027892']fs.readFile('./map.html',function(err,html){if(err){throwerr;}http.createServer(function(request,response){response.writeHeader(200,{"Content-Type":"text/html"

javascript - emit() 不工作 [Node.js]

我订阅了laravel5event[channal]update.group并且我在触发事件后在控制台中收到消息,但在浏览器的客户端我没有收到任何消息。同样在我触发事件后,我在控制台中收到消息,然后Node服务器停止处理消息:bash-4.2#nodenode.jsListeningonPort3000MessageRecieved:testasdsa/home/client/public_html/node_modules/ioredis/lib/parsers/javascript.js:216throwerr;^SyntaxError:UnexpectedtokeneatObje

node.js - 针对 SAVE 命令强制执行 Redis 快照/持久化?

我正在为Node.js使用ioredis库-我想知道如何向Redis发送信号以强制持久化。我很难找到如何做到这一点。SAVE命令似乎可以执行此操作,但我无法验证。谁能确定SAVE命令是否会告诉Redis根据命令将内存中的所有内容写入磁盘?thisarticlehintsatit:https://community.nodebb.org/topic/932/redis-useful-infosodoesthisone:http://redis.io/commands/save 最佳答案 答案是肯定的,SAVE将为您完成这项工作,但它具

mysql - Node.js Promise 概念在 if else 条件下的 then block

我有一个场景,其中web服务需要检查redis中是否存在key(如果存在)将其作为响应提供,否则从mysql获取它,存储在redis中,然后将其作为响应提供。所以我使用的是promise概念,当我第一次调用returnnewSet_Data();它不会转到下一个thenblock它只是保持空闲。但是下一次,因为数据已经存在,所以returnnewSet_Data();没有执行这是正确的。但为什么当我调用returnnewSet_Data();时我第一次遇到问题,这不会用于nextthenblock。下面是我的代码constants.js文件varPromise=require('blu

node.js - node_redis ZRANGEBYLEX 返回 "ERR min or max not valid string range item"错误

已解决。解决方案如下,感谢@hobbs,我更正了它。我正在使用node_redis包。下面是我如何通过cli使用ZRANGEBYLEX命令。127.0.0.1:6379>zaddmovie0"Creed:2015:id1"(integer)1127.0.0.1:6379>zaddmovie0"SecretinTheirEyes:2015:id2"(integer)1127.0.0.1:6379>zaddmovie0"Spotlight:2015:id3"(integer)1127.0.0.1:6379>zaddmovie0"TheLobster:2015:id4"(integer)11

javascript - Node.js测试如何使用独享的Redis数据?

我有一个使用Redis(带有https://github.com/NodeRedis/node_redis)来处理排行榜功能的Node.js应用程序,我创建了一个专门使用Redis来处理它的服务,我正在使用Mocha+Chai对其进行测试。我的情况是,每次使用grunt(来自yeomanangular-fullstack)运行服务器测试时,我都会弄乱与排行榜相关的开发人员数据。我想知道是否有任何方法可以将分离的Redis数据用于测试目的,也许是一种模拟它的方法,或者像我对MongoDB数据所做的那样,只是创建一个专用于测试的数据库。 最佳答案

node.js - Nodejs,在继续执行之前不等待 Redis 查询完成

使用Node.js,我需要通过从Cassandra获取文件路径,使用require()函数动态加载三个文件。我需要从每个文件中获取Redis中的数据,并在从Cassandra加载另一个文件之前进行一些验证。这里的问题是:在验证逻辑执行并提供结果之前,下一个文件开始并行加载。验证结果在加载第二个文件之后出现,这是不应该发生的。第二次文件加载应该等待第一个文件验证逻辑完成,并且只有在验证结果成功时才加载。请帮助我...如何在node.js中暂停或等待Redis完成查询???node.js"usestrict";varexpress=require('express');varcassand

node.js - 使用 Redis 存储来自 neo4j 的查询结果

我在neo4j中有一个带有一些聚合函数的查询,它需要大约10秒来检索信息。我想做的是将查询结果存储到redis中,并且redis数据库会不时更新来自neo4j的结果。一条记录会是这样的:{entry:"123",model:"abc",reactants:[{specie:"abc@12",color:"black"}],....}我正在使用node.js和express,提前感谢您的关注更新:我的查询非常广泛,我必须执行“UNWIND”部分才能按react物进行搜索(我也想要产品,但我不知道该怎么做)。我不知道是否可以优化到至少2秒,但它是这样的:MATCH(rx:ModelReac