sql >> Database >  >> NoSQL >> Redis

redis eval-opdracht uitvoeren om Lua-script uit te voeren in nodeJS

Enkele oplossingen gevonden:

Oplossing 1 )

var redis = require('redis')
var client = redis.createClient()
var fs = require('fs')

client.eval(fs.readFileSync('./debug_script.lua'), 4, key1, key2, key3, key4, arg1, arg2, function(err, res) {
  console.log(res);
});

Opmerking :4 (tweede argument van eval) staat voor het aantal sleutels dat in het script moet worden doorgegeven.

Oplossing 2 ) Creëert een onderliggend proces en voert het CLI-commando uit.

var redis = require("redis");
var client = redis.createClient();

var exec = require('child_process').exec;

var cmd = 'redis-cli --eval debug_script.lua key1 key2 key3 key4 , arg1 arg2';


exec(cmd, function(error, stdout, stderr) {
    // command output is in stdout
        console.log("something happened \n");
        console.log(stdout);
    });



  1. ServiceStack:pijplijn herstellen bij het handmatig aanroepen van een service?

  2. Selderij/Redis dezelfde taak wordt meerdere keren parallel uitgevoerd

  3. Hoe RDBTools installeren met behulp van de AWS CloudFormation-sjabloon?

  4. Hoe dubbele vermeldingen uit een array te verwijderen?