mysql連線池 順序 Mysql 連線池

2021-10-18 12:05:03 字數 1064 閱讀 4373

通常,如果我們的服務涉及到mysql的操作,當乙個新的請求進來的時候,可以先連線mysql, 使用完之後再斷開連線即可。

但這樣做有個弊端,當請求量巨大時,會在瞬間有大量的資料庫連線與斷開操作,這是非常影響 mysql 效能的做法。此時,我們就需要使用mysql連線池。

在 python 服務中使用 mysql 連線池

1、建立連線池,sqllib.py

import pymysql

from dbutils.pooleddb import pooleddb

import config

class mysqlpool():

__pool = none

def __init__(self):

self.conns = self.getpools()

def getpools(self):

__pool = pooleddb(

creator=pymysql,

mincached=1,

maxcached=20,

host=config.host,

user=config.user,

passwd=config.password,

db=config.dbname,

port=config.port,

charset=config.charset

return __pool

mincached: 最小空閒連線數

maxcached: 最大空閒連線數

maxconnections: 最大允許連線數

2、使用連線池,server.py

from sqllib import mysqlpool

pool = mysqlpool()

def test():

db = pool.conns.connection()

processing()

db.close()

db = pool.conns.connection()

從連線池中獲取乙個連線

db.close()

連線使用完畢,將連線放回連線池。

七 mysql連線池

資料儲存到資料庫中,當然少不了獲取連線及執行sql 使用連線池,獲取連線 classmethod defgetconnection cls return 返回乙個資料庫連線的例項 logger logging.getlogger mylogger.myutil.myutil try if myuti...

mysql資料連線池

示例 usr bin python coding utf 8 time 2017 11 21 0021 10 52 author liaochao file demo2.py import mysqldb from dbutils.pooleddb import pooleddb db config...

MySQL連線池詳解

使用場景 資料庫連線是一種關鍵的 有限的 昂貴的資源,這一點在多使用者的網頁應用程式中體現得尤為突出。對資料庫連線的管理能顯著影響到整個應用程式的伸縮性和健壯性,影響到程式的效能指標。資料庫連線池正是針對這個問題提出來的。原理連線池基本的思想是在系統初始化的時候,將資料庫連線作為物件儲存在記憶體中,...