使用pip进行安装: pip install redis
redis-py的使用方法也比较简单,下面将逐步骤介绍。
1)导入依赖库:
import redis
2)生成客户端连接:需要Redis的实例IP和端口两个参数:
client = redisStrictRedis(host='127001', port=6379)
3)执行命令
# True
clientset(key, "python-redis")
# world
clientget(key)
输出结果为:
True
key:hello, value:python-redis
5中数据类型API
eval(String script, int keyCount, String params)
script_load(String script)
evalsha(String sha1, int keyCount, String params:
eval函数有三个参数,分别是:
·script:Lua脚本内容。
·keyCount:键的个数。
·params:相关参数KEYS和ARGV。
script_load和evalsha函数要一起使用,首先使用script_load将脚本加载到 Redis中
evalsha函数用来执行脚本的哈希值,它需要三个参数:
·scriptSha:脚本的SHA1。
·keyCount:键的个数。
·params:相关参数KEYS和ARGV。
import redis
client = redisStrictRedis(host='127001', port=6379)
script = "return rediscall('get',KEYS[1])"
scriptSha = clientscript_load(script)
print clientevalsha(scriptSha, 1, "hello");
在之前的主从辅助中有提到,如果从库发生故障,从库重连后会借助repl_backlog_buffer这个环形缓冲区实现增量复制,来达到数据相同的 *** 作。
但是主库挂了怎么办?我们的redis服务总不可能只提供读服务吧(主库挂了从库仍可读),redis的哨兵机制有效的解决了这个问题
要开放26379端口为哨兵进程使用(哨兵进程说白了就是个监听主实例运行状况的进程)
分别进入容器运行sentinel
观察日志
查看日志
完成
哨兵进程主要负责三个任务
哨兵检测从库,若从库响应超时则标为 主观下线 ,因为从库的下线对集群影响不大
哨兵检测主库,若主库响应超时则标为 客观下线 ,这个因为网络延迟等不可避免的原因可能被误判,所以为减少误判需要进行多人投票,对应该设置的2,表示要2台从库标记为客观下线
筛选之后按照一定的规则,逐个打分
由于Redis提供的发布/订阅机制(pub/sub),哨兵实例之间可以互相发现对方
哨兵实例只要和主库建立连接,就可以 在主库上发布自己的连接信息(IP和端口) ,因此他们能获取彼此的IP地址和端口
同时,哨兵也会向主库发送info命令获取集群的主从列表信息,这样就可以和每个从库建立连接并持续监控
注意:如果假设上面的哨兵集群只有2个实例(2从),一个哨兵挂了,另一个想称为leader是不可能的,因为设置决定必须获得2票,而不是自己的一票
你看看你的redis配置文件,在配置文件里可以设置是否可以远程访问, 默认只能本地访问。还有就是 你的redis 设置 安全登陆名了吗。
或者telnet 一下 看看端口通不通?
以上就是关于Python客户端redis-py全部的内容,包括:Python客户端redis-py、简介redis之哨兵集群搭建、java jedis 链接不上redis 防护墙已经关闭 ip能ping通 端口号以开 配置文件也改过 就是连不上等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)