sql >> Databáze >  >> NoSQL >> Redis

Klíč ioredis s odpovídajícím vzorem

takže toto je příklad kódu, který vám poskytne širokou představu. Můžete tedy využít dvě věci, které redis nabízí. První je funkce KEYS, která by se neměla používat kvůli její O(N) složitosti. Tento příklad používá příkaz scan v proudu, tj. jeden po druhém s různými pozicemi kurzoru. Prohledá celý redis, ale vrátí 10 výsledků najednou, což nezastaví redis, jako by to měla funkce KEYS. Všechny klíče přesuneme do pole klíčů, po kterém můžete procházet všechny klíče a pomocí příkazu GET získat hodnotu každého klíče.

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);
                    });


  1. Integrace ClusterControl s SNMP – Proof of Concept:Část první

  2. Vysoce výkonné clustery MongoDB v Azure

  3. Redis - Lua tabulky jako návratové hodnoty - proč to nefunguje

  4. Jak může HBase v CDP využít Amazon S3