Advertisement
Guest User

Untitled

a guest
Apr 23rd, 2019
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.95 KB | None | 0 0
  1. #!/usr/bin/env python
  2. # coding:utf-8
  3. import redis
  4. from redis.sentinel import Sentinel
  5.  
  6. # 连接哨兵服务器(主机名也可以用域名)
  7. sentinel = Sentinel([
  8. ('172.31.0.2', 5001),
  9. ('172.31.0.3', 5001),
  10. ('172.31.0.4', 5001),
  11. ('172.31.0.5', 5001)
  12. ],
  13. socket_timeout=0.5)
  14.  
  15. # 获取主服务器地址
  16. master = sentinel.discover_master('mymaster')
  17. print(master)
  18. # 输出:('172.31.0.2', 5001)
  19.  
  20. # 获取从服务器地址
  21. slave = sentinel.discover_slaves('mymaster')
  22. print(slave)
  23. # 输出:[('172.31.3', 5001), ('172.31.0.4', 5001), ('172.31.0.5', 5001)]
  24.  
  25. # 获取主服务器进行写入
  26. master = sentinel.master_for('mymaster', socket_timeout=0.5, password='redis_auth_pass', db=15)
  27. w_ret = master.set('foo', 'bar')
  28. # 输出:True
  29.  
  30. # # 获取从服务器进行读取(默认是round-roubin)
  31. slave = sentinel.slave_for('mymaster', socket_timeout=0.5, password='redis_auth_pass', db=15)
  32. r_ret = slave.get('foo')
  33. print(r_ret)
  34. # # 输出:bar
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement