2020-09-27 15:04:00 by wst
database redis曾经我们被redis-py-cluster的版本和redis-py版本不匹配,折磨的死去活来。
踩坑列表:
令人抓狂的redis和rediscluster Python驱动包的安装
importerror cannot import name 'strictrediscluster'
redis和redis-py-cluster版本冲突,导致ImportError: cannot import name 'bytes'
就在昨天,redis-py-cluster发布了2.1.0版本,截图如下:
然后我们看下版本说明:
pip install redis-py-cluster==2.1.0
from rediscluster import RedisCluster
# redis集群节点
REDIS_NODES = [
{'host': '172.21.100.70', 'port': '5000'},
{'host': '172.22.100.71', 'port': '6000'},
{'host': '172.23.100.72', 'port': '7000'},
{'host': '172.24.100.73', 'port': '8000'},
{'host': '172.25.100.74', 'port': '9000'},
]
class RedisApi(object):
@classmethod
def redis_conn(cls, startup_nodes=REDIS_NODES, max_connections=1000):
redisObject = None
try:
redisObject = RedisCluster(startup_nodes=startup_nodes, max_connections=max_connections)
except Exception as e:
logger.error("redis conn error : %s" % e)
return redisObject
def read_cookie_redis(source, username, key):
""" 从redis中读取cookie
:param source: 账号来源
:param username: 账号
:param key: 字段名
:return:
"""
conn = RedisApi.redis_conn()
val = conn.hget("{}:{}".format(source, username), key)
if not val:
return ''
val = val.decode("utf8")
return val
if __name__ == "__main__":
value = read_cookie_redis("ttttt", "123456", "session")
print(value)
更多精彩内容,请关注公众号: