Všechny vaše otázky jsou zodpovězeny na EVAL
stránku, ale když jste se zeptali...:
Jaký je rozdíl?
KEYS
se používá k předávání názvů klíčů, zatímco ARGS
by mělo být na cokoli jiného. Toto není přesně vynuceno (tj. většinou by bylo v pořádku je smíchat), ale pokud se nebude dodržovat, může to vést k potenciálním problémům.
Jak Redis zachází s hodnotami v poli KEYS?
Obsah KEYS
jsou zkontrolovány, aby se ověřilo, že všechny klíče jsou dostupné pro fragment Redis, na kterém je spuštěn skript. Tento mechanismus umožňuje spouštění skriptů v nasazení clusteru Redis.
Co když ve svém skriptu musím použít klíče dynamicky generované za běhu?
Viz předchozí odpovědi – to je možné, ale šli byste proti doporučením. Váš skript bude možné bezpečně spouštět pouze na samostatné instanci Redis, a protože toto chování není specifikováno, může se v budoucích vydáních přerušit.