您现在的位置是:网站首页> 编程资料编程资料

Python实现各种中间件的连接_python_

2023-05-26 330人已围观

简介 Python实现各种中间件的连接_python_

连接数据库

Redis连接  

1、连接Redis单节点

import redis """ 连接redis ConnectionPool 方式连接 """ def connRedis(self):     pool=redis.ConnectionPool(host='172.16.1.2',password='',db=2, port=6379) #按具体情况填写参数     r=redis.StrictRedis(connection_pool=pool)     r.set("test_name","admin")     print(r.get('test_name'))

2、连接Redis cluster集群 

python 操作redis 集群 用redis模块不行,需要导入模块

#!/usr/bin/env python #coding:utf-8     from rediscluster import StrictRedisCluster import sys   def redis_cluster():     redis_nodes =  [{'host':'192.168.1.2','port':6378},                     {'host':'192.168.1.2','port':6380},                     {'host':'192.168.1.2','port':6381},                     {'host':'192.168.1.2','port':6382},                     {'host':'192.168.1.2','port':6383},                     {'host':'192.168.1.2','port':6384},                     {'host':'192.168.1.2','port':6385}                    ]     try:         redisconn = StrictRedisCluster(startup_nodes=redis_nodes)     except Exception,e:         print "Connect Error!"         sys.exit(1)       redisconn.set('name','admin')     print "name is: ", redisconn.get('name')   redis_cluster()

3、连接Redis哨兵集群

#!/usr/bin/env python # -*- coding:utf-8 -*- import redis from redis.sentinel import Sentinel # 连接哨兵服务器(主机名也可以用域名) sentinel = Sentinel([('172.31.0.2', 5001),                      ('172.31.0.3', 5001),                      ('172.31.0.4', 5001),                      ('172.31.0.5', 5001)              ],                     socket_timeout=0.5) # 获取主服务器地址 master = sentinel.discover_master('mymaster') print(master) # 输出:('172.31.0.2', 5001) # 获取从服务器地址 slave = sentinel.discover_slaves('mymaster') print(slave) # 输出:[('172.31.3', 5001), ('172.31.0.4', 5001), ('172.31.0.5', 5001)] # 获取主服务器进行写入 master = sentinel.master_for('mymaster', socket_timeout=0.5, password='redis_auth_pass', db=15) w_ret = master.set('foo', 'bar') # 输出:True # # 获取从服务器进行读取(默认是round-roubin) slave = sentinel.slave_for('mymaster', socket_timeout=0.5, password='redis_auth_pass', db=15) r_ret = slave.get('foo') print(r_ret) # # 输出:bar

以上就是Python实现各种中间件的连接实现的详细内容,更多关于Python连接中间件的资料请关注其它相关文章!

-六神源码网