내가 사용하려는 레디 스-평을 일부 데이터를 캐싱,하지만 난 차이의 적절한 설명 찾을 수 없습니다 redis.StrictRedis()
와 redis.Redis()
. 동등합니까?
또한 Redis Python Docsredis.StrictRedis()
에서의 인수에 대한 명확한 문서를 찾을 수 없습니다 . 어떤 생각?
답변
redis-py exposes two client classes that implement these commands
The StrictRedis class attempts to adhere to the official command syntax.
과
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
이전 버전과의 호환성이 필요합니까? 사용 Redis
. 상관 없어? 사용 StrictRedis
.
2017-03-31
인용 된 github.com 링크에서 이전 버전과의 호환성에 대한 세부 사항은 다음과 같습니다.
위의 변경 사항 외에도 StrictRedis의 하위 클래스 인 Redis 클래스는 이전 버전의 redis-py와의 하위 호환성을 제공하기 위해 여러 다른 명령을 재정의합니다.
LREM : ‘num’이 기본값 인 0을 제공 할 수 있도록 ‘num’및 ‘value’인수의 순서가 반전되었습니다.
ZADD : Redis는 ‘value’앞에 ‘score’인수를 지정합니다. 구현시 실수로 교체되었으며 사람들이 이미 사용하기 전까지는 발견되지 않았습니다. Redis 클래스는 name1, score1, name2, score2, … 형식의 * args를 예상합니다.
SETEX : ‘시간’및 ‘값’인수의 순서가 반대입니다.
답변
오래된 질문이지만 Google 검색 후이 질문에 도달하는 모든 사람에게 :
redis-py readme에서 ( 링크 ) :
redis-py 3.0은 레거시 “Redis”클라이언트 클래스에 대한 지원을 중단합니다. “StrictRedis”가 “Redis”로 이름이 바뀌었고 “StrictRedis”라는 별칭이 제공되어 이전에 “StrictRedis”를 사용하는 사용자가 변경없이 계속 실행할 수 있습니다.
다음은 StrictRedis
( link ) 를 정의하는 redis-py 코드의 줄입니다 .
StrictRedis = Redis