तो यह उदाहरण कोड है जो आपको एक व्यापक विचार देगा। तो आप दो चीजों का उपयोग कर सकते हैं जो रेडिस प्रदान करता है। पहला KEYS फ़ंक्शन है जिसका उपयोग इसकी O(N) जटिलता के कारण नहीं किया जाना चाहिए। यह उदाहरण एक स्ट्रीम में स्कैन कमांड का उपयोग कर रहा है यानी एक-एक करके विभिन्न कर्सर स्थितियों के साथ। यह पूरे रेडिस को स्कैन करेगा लेकिन एक बार में 10 परिणाम लौटाएगा जो कि रेडिस को KEYS फ़ंक्शन की तरह नहीं रोकेगा। हम सभी कुंजियों को एक कुंजी सरणी में धकेल देंगे जिसके बाद आप सभी कुंजियों के माध्यम से लूप कर सकते हैं और प्रत्येक कुंजी का मान प्राप्त करने के लिए GET कमांड का उपयोग कर सकते हैं।
const redis = require('ioredis');
let stream = redis.scanStream({
match: "LOGIN::*",
count: 10
});
stream.on("data", async (keys = []) => {
let key;
for (key of keys) {
if (!keysArray.includes(key)) {
await keysArray.push(key);
}
}
});
stream.on("end", () => {
res(keysArray);
});