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

Oznámení klíčového prostoru Redis s StackExchange.Redis

Běžné API pro předplatitele by mělo fungovat dobře – neexistuje žádný předpoklad o případech použití a toto by mělo fungovat dobře.

Nicméně souhlasím s tím, že toto je vestavěná funkce, která by možná mohla těžit z pomocných metod na API a možná i jiného podpisu delegáta – k zapouzdření syntaxe oznámení keyapace, aby je lidé nemuseli duplikovat. Za to:Navrhuji, abyste problém zaprotokolovali, aby se na něj nezapomnělo.

Jednoduchá ukázka, jak se přihlásit k odběru události keyspace

Nejprve je důležité zkontrolovat, zda jsou povoleny události klíčového prostoru Redis. Události by měly být například povoleny pro klíče typu Set . To lze provést pomocí CONFIG SET příkaz:

CONFIG SET notify-keyspace-events KEs

Jakmile jsou události klíčového prostoru povoleny, je to jen o přihlášení k odběru kanálu pub-sub:

using (ConnectionMultiplexer connection = ConnectionMultiplexer.Connect("localhost"))
{
    IDatabase db = connection.GetDatabase();
    ISubscriber subscriber = connection.GetSubscriber();

    subscriber.Subscribe("[email protected]__:*", (channel, value) =>
        {
            if ((string)channel == "[email protected]__:users" && (string)value == "sadd")
            {
                // Do stuff if some item is added to a hypothethical "users" set in Redis
            }
        }
    );
}

Další informace o událostech keyspace zde.



  1. Jak zkontrolovat, zda je pole pole součástí jiného pole v MongoDB?

  2. Odstraňte z řetězce všechny symboly, které nejsou utf-8

  3. Nastavte klíč/hodnotu redis pomocí camel-redis

  4. Mongodb findAndModify node js