Redis
 sql >> Baza danych >  >> NoSQL >> Redis

redis-py :Jaka jest różnica między StrictRedis() i Redis()?

EDYCJA:Są teraz równoważne:

redis-py 3.0 porzuca wsparcie dla starszej klasy klienta "Redis" "StrictRedis" został przemianowany na "Redis" i zapewniono alias o nazwie "StrictRedis", aby użytkownicy, którzy wcześniej używali "StrictRedis" mogli nadal działać bez zmian.

Oryginalna odpowiedź:Wydaje się to całkiem jasne:

 redis-py exposes two client classes that implement these commands
 The StrictRedis class attempts to adhere to the official command syntax.

i

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

Potrzebujesz kompatybilności wstecznej? Użyj Redis . Nie obchodzi? Użyj StrictRedis .

2017-03-31

Oto szczegóły dotyczące kompatybilności wstecznej, z cytowanego linku github.com:

Oprócz powyższych zmian, klasa Redis, podklasa StrictRedis, zastępuje kilka innych poleceń, aby zapewnić wsteczną kompatybilność ze starszymi wersjami redis-py:

LREM:Kolejność argumentów „num” i „wartość” odwrócona w taki sposób, że „num” może zapewnić domyślną wartość zero.

ZADD:Redis określa argument „score” przed „wartość”. Zostały one przypadkowo zamienione podczas implementacji i wykryte dopiero po tym, jak ludzie już z nich korzystali. Klasa Redis oczekuje *argów w postaci:nazwa1, wynik1, nazwa2, wynik2, ...

SETEX:odwrócono kolejność argumentów „czas” i „wartość”.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Jak korzystać z polecenia HSCAN w Redis?

  2. włóż klucz w redis

  3. Dobry sposób na użycie socket.io z klastrem na serwerze wielordzeniowym?

  4. Redis — Jak klucze HASH, SET i ZSET są powiązane w zapisaniu CrudRepository?

  5. Jeśli Redis jest jednowątkowy, jak może być tak szybki?