python - lpush - redis-py: ¿Cuál es la diferencia entre StrictRedis() y Redis()?
redis hkeys (1)
Quiero usar redis-py para almacenar en caché algunos datos. No puedo encontrar una explicación adecuada sobre la diferencia entre redis.StrictRedis () y redis.Redis ()! Es el Redis () equivalente a StrictRedis ()?
Además, no puedo encontrar ninguna documentación clara sobre los argumentos de redis.StrictRedis () en Redis Python Docs ¿ Alguna idea?
redis-py exposes two client classes that implement these commands
The StrictRedis class attempts to adhere to the official command syntax.
y
In addition to the changes above, the Redis class, a subclass of StrictRedis,
overrides several other commands to provide backwards compatibility with older
versions of redis-py
¿Necesitas compatibilidad hacia atrás? Usa Redis
. No me importa? Utilice StrictRedis
.
2017-03-31
Aquí están los detalles de la compatibilidad hacia atrás, del enlace de github.com citado:
Además de los cambios anteriores, la clase Redis, una subclase de StrictRedis, anula muchos otros comandos para proporcionar compatibilidad con versiones anteriores de redis-py:
LREM: la orden de los argumentos ''num'' y ''value'' se invierte de modo que ''num'' puede proporcionar un valor predeterminado de cero.
ZADD: Redis especifica el argumento ''puntaje'' antes de ''valor''. Estos se intercambiaron accidentalmente cuando se implementaron y no se descubrieron hasta que las personas ya lo estaban usando. La clase Redis espera * args en la forma de: nombre1, puntaje1, nombre2, puntaje2, ...
SETEX: orden de los argumentos de "tiempo" y "valor" invertidos.