【问题标题】:how to create queue via node_redis如何通过 node_redis 创建队列
【发布时间】:2019-02-28 00:49:13
【问题描述】:

我尝试在node_redis 中创建队列。而且我不明白如何创建队列。我曾尝试使用zadd 方法。我从REDIS 运行了示例代码,下一个代码出现错误:

var redis = require("redis");
client = redis.createClient();
const {promisify} = require('util');
const getAsync = promisify(client.get).bind(client);


client.on("error", function (err) {
    console.log("Error " + err);
});

var args = [ 'myzset', 1, 'one', 2, 'two', 3, 'three', 99, 'ninety-nine' ];
client.zadd(args, function (err, response) {
    if (err) throw err;
    console.log('added '+response+' items.');

    // -Infinity and +Infinity also work
    var args1 = [ 'myzset', '+inf', '-inf' ];
    client.zrevrangebyscore(args1, function (err, response) {
        if (err) throw err;
        console.log('example1', response);
        // write your code here
    });

    var max = 3, min = 1, offset = 1, count = 2;
    var args2 = [ 'myzset', max, min, 'WITHSCORES', 'LIMIT', offset, count ];
    client.zrevrangebyscore(args2, function (err, response) {
        if (err) throw err;
        console.log('example2', response);
        // write your code here
    });
});

client.quit();

一个错误:

对于像 client.set 或 client.get 这样的简单方法,我没有遇到错误。 node_redis如何使用其他方法? 我已经在 Windows 操作系统上安装了 redis。

【问题讨论】:

    标签: javascript redis nosql node-redis


    【解决方案1】:

    我在question 上找到了答案;

    我应该调用 client.quit();在下一个方法中:

    var args = [ 'myzset', 1, 'one', 2, 'two', 3, 'three', 99, 'ninety-nine' ];
    client.zadd(args, function (err, response) {
        if (err) throw err;
        console.log('added '+response+' items.');
    
        // -Infinity and +Infinity also work
        var args1 = [ 'myzset', '+inf', '-inf' ];
        client.zrevrangebyscore(args1, function (err, response) {
            if (err) throw err;
            console.log('example1', response);
            // write your code here
        });
    
        var max = 3, min = 1, offset = 1, count = 2;
        var args2 = [ 'myzset', max, min, 'WITHSCORES', 'LIMIT', offset, count ];
        client.zrevrangebyscore(args2, function (err, response) {
            if (err) throw err;
            console.log('example2', response);
            // write your code here
        });
    
        client.quit();
    });
    

    client.quit();必须在 zadd 方法内。

    【讨论】:

      猜你喜欢
      • 2023-04-04
      • 2019-09-03
      • 2014-03-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-28
      相关资源
      最近更新 更多