sql >> Databasteknik >  >> NoSQL >> Redis

Lagrar returvärdet för node.js setTimeout i redis

Du kan inte lagra objektet i Redis. setTimeout metod returnerar en hanterare (objektreferens).

En idé skulle vara att skapa din egen associativa array i minnet och lagra indexet i Redis. Till exempel:

var nextTimerIndex = 0;
var timerMap = {};

var timer = setTimeout(function(timerIndex) {
    console.log('Ding!');

    // Free timer reference!
    delete timerMap[timerIndex];
}, 5 * 1000, nextTimerIndex);

// Store index in Redis...

// Then, store the timer object for later reference
timerMap[nextTimerIndex++] = timer;

// ...
// To clear the timeout
clearTimeout(timerMap[myTimerIndex]);


  1. MongoDB pull array-element från en samling

  2. Node.js och Mongoose regex-fråga på flera fält

  3. Mongoose sparar inte kapslat objekt

  4. Azure Function med Cosmos MongoDB-integration sparas inte