草庐IT

nodes_alive

全部标签

node.js - 如何使用 Express.js 从在本地系统上运行的 node.js 应用程序连接到在 EC2 上运行的 redis?

我正在Express.js上编写Node.js应用程序。我在UBUNTUServer16.04上运行的EC2实例上安装了Redis服务器。我已经为Redis安装了npm模块。我已经提到了端口和主机,如下所示:-varredis=require('redis');varclient=redis.createClient(6379,"127.0.0.1");当我尝试连接到Redis的EC2实例时,出现如下错误:-events.js:141thrower;//Unhandled'error'event^Error:Redisconnectionto127.0.0.1:6379failed-c

node.js - 使用 Redis 和 MongoDB (HyperLogLog) 计算唯一值

我在MongoDB中有一个集合,其中包含一个示例文档,如下所示-{"_id":ObjectId("58114e5e43d6420b7db4e15c"),"browser":"Chrome","name":"hyades","country":"in","day":"16-10-21","ip":"0.0.0.0","class":"A123"}问题陈述我应该能够在获取不同数量的IP的同时对任何字段进行分组。聚合查询——[{$group:{_id:'$class',ip_arr:{$addToSet:'$ip'}}},{$project:{class:'$_id.class',ip:{$

node.js - 如何使用 nodejs 在 Redis 缓存中创建 LIKE 运算符搜索?

我有一个问题,是否可以在Redis中创建一个LIKE运算符搜索?类似于关系型(mysql/oracle)数据库。我有复杂的json:{"_id":ObjectId("581c8b8854fdcd1ff8c944e0"),"Objectcode":"xxxxx","Objecttype":"xxxx","docid":"581c8b8554fdcd1ff8c93d10","description":"Tagsbasedsearch....","metaTags":["tag1","tag2","tag3","tag5","tag6","tag7","tag8","tag9","tag10

node.js - 如何处理mqtt客户端收到的大量信息

我有mqtt客户端来接收如下主题和消息client.on('message',function(topic,message){//thisfunctionisexecutedevery2sletmsg=message.toString();processMessage(message);//thistakeslongtime})client.on将每1秒调用一次,这取决于另一个发布mqtt消息的mqtt客户端。processMessage()可能需要大约2秒来处理(I/O和数据库操作)如果我这样放任不管,就会出问题。你们能指导我正确处理这种情况的方法吗?例如使用MemeCache来快速

javascript - Node Redis 命令不会运行?

这让我很困惑。我有一个BLPOP触发下面的源代码。当源第一次被触发时,只有第一个Redis调用被触发......第二个不会被触发,直到有另一个pop并且源代码再次运行??nullDEBUG-8621-SatFeb18201720:47:53GMT-0600(CST)-5totalConnections2000nullDEBUG-8621-SatFeb18201720:47:54GMT-0600(CST)-5expectedConnections500nullDEBUG-8621-SatFeb18201720:47:54GMT-0600(CST)-5totalConnections210

node.js - Redis Node : Ready check failed: NOAUTH Authentication required

我正在使用redis从digitalocean指南安装redis后在npm上打包我使用one保护它他们的职位。我将requirepass设置为密码,然后登录到我的redis-cli并成功验证了自己。但是我无法从我的Node.js应用程序中执行相同的操作。这是我在Node中的配置client=redis.createClient({no_ready_check:true,host:'ipaddress',port:port});client.auth('secretPassword',function(err,doc){if(err)throwerr;elseif(doc==="OK")

node.js - Redis 与 NodeJS - 创建一组十个项目

我目前正在使用Angular2、NodeJS和Redis构建一个小型应用程序,其中用户信息将存储在Redis实例中。我是Redis的新手,在尝试可视化我需要创建的功能时遇到了麻烦。用户通过Angular2前端在输入表单中输入单词。然后将单词转换为不同的字符串,然后将这些值以对象的形式存储在存储器(Redis)中。只需要存储最后10个项目,因此存储DB的长度需要为10,并将最新的项目附加到集合中,如果长度已经为10,则修剪最后一个项目。我很难在Redis中实现它,我在NodeJS层中的Redis命令似乎没有按照我希望的方式执行。这是处理用户输入的NodeJSController:varC

node.js - 无法在 sailsjs 中获取 redis session

我有两个API。当我从Atom访问第一个API时,我在session中设置了一个成功的参数。但是当我点击第二个API并尝试通过req.session获取session时,它会创建一个新session而不是提供先前的session。Ho将我在第一个API中设置的session和参数获取到第二个API。下面是我设置session参数的第一个API代码。functionfirstAPI(req,res){////ThisisPOSTAPIsession=req.session;////Doingsomethingwithreqsession.message="mymessage";sails

node.js - 停止 RabbitMQ 消费者进程当前消息

我正在NodeJS上编写一个处理CPU密集型任务的服务。主要思想非常简单:Client(浏览器)发送请求Webserver(NodeJS+ExpressJS)处理请求:生成ID,使用该ID将任务添加到RabbitMQ,并使用该ID回复客户端。同时webserver将任务添加到Redis服务器,ID作为键,{status:active}作为值消费者在大约一分钟内处理任务并使用派生结果更新redis条目。Client使用此ID检查相应任务的状态。问题:如果客户端停止询问服务器任务是否仍在运行,我希望消费者停止处理步骤4中的任务。我如何使用RabbitMQ做到这一点?P.S.:我尝试清除队列

node.js - 如何杀死Redis上Node打开的空闲客户端?

我很难自动关闭Redis的客户端连接。这肯定是redis包的问题:(https://www.npmjs.com/package/redis)Redis将保持连接处于事件状态,直到您关闭它们或达到默认为无限的超时。我知道这一点:howdoIkillidleredisclients甚至在阅读SO之前,我尝试通过.conf文件和命令行设置timeout配置,但它们都不起作用。实际发生的事情很奇怪:如果我在N秒后运行CLIENTLIST:仍然有相同数量的空闲连接客户端“空闲”信息从0重新开始(例如,如果我设置10秒的超时,11秒后idle信息为1)。地址改变了。端口号在创建新连接时会发生变化,