连接器/ Python连接池

Posted 程序约

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了连接器/ Python连接池相关的知识,希望对你有一定的参考价值。


          浮之聪者未必精明,讷之愚者未必笨拙。聪者往往由精而愚,愚者往往由痴而明。诚则,痴是聪的根本,精是愚的化身。凡成大事者皆为痴人







mysql连接器/ Python 和支持简单的连接池,这些特点:

的 mysql.connector.pooling模块实现池。

池打开和处理线程安全的连接数为请求者提供连接。

连接池的大小是可配置池创建时间。它不能被调整大小。

连接池可以叫池创建时间。如果没有名字,一个是使用连接参数来生成的。

连接池名称可以从连接池中检索获得的或连接。

可以有多个连接池。这使用程序能够支持不同的MySQL服务器的连接池,例如。

对于每个连接请求,提供下一个可用的连接池。没有循环使用或其他调度算法。如果池是筋疲力尽, PoolError是提高。

可以重新配置连接参数使用的池。这些适用于从池中获取连接。重新配置个人从池中获取连接通过调用连接 config()不支持方法。

应用程序可以从连接池中受益的能力包括:

中间件维护多个连接到多个MySQL服务器,需要连接一应俱全。

网站可以有更多 “永久”连接到MySQL服务器开放。

连接池可以隐式或显式地创建。

创建一个连接池隐式:打开一个连接,并指定一个或多个池有关的参数(pool_name, pool_size)。例如:



dbconfig = {
 “database”: “test”,
 “user”:     “joe”
}

cnx = mysql.connector.connect(pool_name = “mypool”,
                             pool_size = 3,
                             **dbconfig)


池名称仅限于字母数字字符和特殊字符 ., _, *, $, #。必须不超过池名称 pooling.CNX_POOL_MAXNAMESIZE64字符(默认)。

池的大小必须大于0小于 pooling.CNX_POOL_MAXSIZE(默认32)。


cnx = mysql.connector.connect(pool_name = “mypool”, pool_size = 3)
cnx = mysql.connector.connect(pool_name = “mypool”, **dbconfig)
cnx = mysql.connector.connect(pool_name = “mypool”)


连接池通过调用获得的 connect()池有关的论点有类 PooledMySQLConnection(见10.4节,“池。PooledMySQLConnection阶级”). PooledMySQLConnection池连接对象是相似的 MySQLConnection未共享连接对象,这些差异:

发布一个合用的连接从连接池中获得,调用它 close()法,就像为任何未共享连接。然而,对于一个合用的连接, close()实际上并没有关闭连接而返回到池中,使它可用于随后的连接请求。

池连接不能使用它的重新配置 config()方法。连接池变化必须通过对象本身,将在稍后介绍。

一个合用的连接 pool_name属性返回池名称。

显式地创建一个连接池:创建一个 MySQLConnectionPool对象(如10.3节,“池。MySQLConnectionPool阶级”):


dbconfig = {
 “database”: “test”,
 “user”:     “joe”
}

cnxpool = mysql.connector.pooling.MySQLConnectionPool(pool_name = “mypool”,
                                                     pool_size = 3,
                                                     **dbconfig)



从池中请求连接,使用它 get_connection()方法:


cnx1 = cnxpool.get_connection()
cnx2 = cnxpool.get_connection()


当您显式地创建一个连接池,可以使用接池对象的 set_config()方法重新配置连接池参数:


 

dbconfig = {
 “database”: “performance_schema”,
 “user”:     “admin”,
 “password”: “secret”
}

cnxpool.set_config(**dbconfig)



从池中连接请求的配置更改后使用新的参数。连接前获得改变不受影响,但当他们关闭(返回到池)重新使用新的参数之前为后续连接请求返回的池。








也欢迎把程序约推荐给你的家人好友


欢迎在下面留言评论

以上是关于连接器/ Python连接池的主要内容,如果未能解决你的问题,请参考以下文章

python通过连接池连接redis,操作redis队列

python redis之连接池的原理

python redis之连接池的原理

python数据库连接池

python 里的 redis 连接池的原理

Python数据库连接池DBUtils