jadi ini adalah contoh kode yang akan memberi Anda gambaran luas. Jadi Anda bisa menggunakan dua hal yang ditawarkan redis. Pertama adalah fungsi KEYS yang tidak boleh digunakan karena kompleksitasnya O(N). Contoh ini menggunakan perintah pindai dalam aliran yaitu satu per satu dengan posisi kursor berbeda. Ini akan memindai seluruh redis tetapi akan mengembalikan 10 hasil sekaligus yang tidak akan menghentikan redis seperti fungsi KEYS. Kami akan mendorong semua kunci ke array kunci setelah itu Anda dapat mengulang semua kunci dan menggunakan perintah GET untuk mendapatkan nilai dari setiap kunci.
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);
});