1、直连模式
#!/usr/bin/env python
# -*- coding:utf-8 -*-
import redis
r = redis.Redis(host='192.168.1.110', socket_connect_timeout=10, port=6379, db=0, password='123456', decode_responses=True)
r = redis.Redis(connection_pool=pool)
print(r.llen('test'))
2、哨兵模式
#!/usr/bin/env python
# -*- coding:utf-8 -*-
from redis.sentinel import Sentinel
sentinel = Sentinel([('192.168.1.110',16380),
('192.168.1.110', 16381),
('192.168.1.110', 16382)
], socket_timeout=0.5, sentinel_kwargs={'password': '123456'}, db=0)
master = sentinel.master_for('mymaster', password='123456')
slave = sentinel.slave_for('mymaster', password='123456')
print(master.llen('test'))
3、集群模式
#!/usr/bin/env python
# -*- coding:utf-8 -*-
from rediscluster import StrictRedisCluster
redis_nodes = [{'host':'192.168.1.110','port':13790},
{'host':'192.168.1.110','port':13791},
{'host':'192.168.1.110','port':13793},
{'host':'192.168.1.120','port':13794}
]
redisconn = StrictRedisCluster(startup_nodes=redis_nodes,decode_responses=True,password='123456')
参考链接:
https://redis.readthedocs.io/en/latest/connections.html