Stejně jako v druhé uvedené odpovědi neexistuje žádné takové oznámení.
Koneckonců, Oznámení Keyspace je upozornění na události na jediném klíči . Každé oznámení je spojeno s klíčem. Pro keyspace
událost, název klíče je součástí názvu kanálu. Pro keyevent
událost, název klíče je zpráva.
PUBLISH [email protected]__:key_name comamnd
PUBLISH [email protected]__:command key_name
Každý příkaz, který odesílá upozornění, musí mít klíč jako argument. např. del key
, set key val
. Nicméně flushdb
příkaz nemá žádný klíč jako argument. Příkaz neovlivňuje jedinou klávesu. Místo toho odebere všechny klíče v databázi. Takže pro to není žádné takové upozornění. Jinak, co od kanálu očekáváš? Všechny klíče, které byly odstraněny? Není to dobrý nápad.
Událost však můžete simulovat pro flushdb
- nastavit speciální klíč, např.
flushdb-event
:set flushdb-event 0
- přihlaste se k odběru na odpovídajícím kanálu:
subscribe [email protected]__:flushdb-event
- před voláním
flushdb
nastavte speciální klíč :set flushdb-event 1
Tímto způsobem můžete získat simulovaný flushdb
oznámení.