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服務器,所有數據同步成功。