4台Redis服务器部署主从结构,主从配置请参见《Redis应用(2)主从配置》。
从客户端访问Redis服务器有各种API,支持的语言和脚本非常多:ActionScript,C,C++,C#,LISP,D,Erlang,Go,Java,Lua,Node.js,Object C,PHP,Perl,Python,Ruby,Scala,Tcl等。
Python客户端也有好几个:redis-py,txredis,desir,brukva等。感兴趣的R粉可以从Redis官方网站
得到更详细的信息。
本文使用Python语言和redis-py实现客户端访问,完成Redis操作。
[root@ITD-001 bin]# ./redis-cli 127.0.0.1:6379> info NOAUTH Authentication required. #服务器设置了密码认证 127.0.0.1:6379> auth abc123_! #密码认证 OK #主服务器可以完成写操作,其他从服务器只读模式 #查看主服务器10.130.61.201数据 127.0.0.1:6379> keys * (empty list or set) #查看从服务器10.130.61.202数据 127.0.0.1:6379> keys * (empty list or set)
在客户端上安装redis.py
root@demo:/usr/local/src/redis-py-master# ls benchmarks CHANGES docs LICENSE README.rst redis.egg-info tests vagrant build dist INSTALL MANIFEST.in redis setup.py tox.ini root@demo:/usr/local/src/redis-py-master# python setup.py install
以下是Python测试代码
root@demo:~# vim r.py #!/usr/bin/python #coding:utf-8 import redis r = redis.Redis(host='10.130.61.201', port=6379, db=0, password='abc123_!') r.set('demo', 'Hello Redis') print(r.get('demo')) #执行结果 root@demo:~# ./r.py Hello Redis
查看从客户端访问后Redis数据
#查看主服务器10.130.61.201数据 127.0.0.1:6379> keys * 1) "demo" 127.0.0.1:6379> get demo "Hello Redis" #查看从服务器10.130.61.202数据 127.0.0.1:6379> keys * 1) "demo" 127.0.0.1:6379> get demo "Hello Redis" #查看从服务器10.130.61.203数据 127.0.0.1:6379> keys * 1) "demo" 127.0.0.1:6379> get demo "Hello Redis" #查看从服务器10.130.61.204数据 127.0.0.1:6379> keys * 1) "demo" 127.0.0.1:6379> get demo "Hello Redis"
至此客户端可以成功访问Redis服务器,所有数据同步成功。