进程中的Python持久mysql连接

2024-04-19 10:05:03 发布

您现在位置:Python中文网/ 问答频道 /正文

在我正在开发的python程序中,我有数千个MySQL查询要运行。我想同时运行这些,原因很明显,我正在努力找出最好的方法。你知道吗

使用多重处理,我想启动8个子进程。每一个都应该创建一个到SQL的连接,该连接将在其整个生命周期内持续存在。然后我想使用ProcessPool将查询imap到那些使用持久SQL连接的进程中。一旦所有查询都返回了结果,我就要关闭每个进程上的连接。你知道吗

目前,我可以向创建MySQLdb连接的每个进程发送一个初始值设定项,然后在imap中传递的每个查询中使用它。但是,我找不到一个好的方法来“取消初始化”/解构进程并关闭DB连接。你知道吗

当池即将销毁每个进程时,是否有方法关闭DB连接?你知道吗

我已经研究了如何使用队列将数据传输到/从队列传输数据,然后再创建子类多处理过程和override run,它可以创建连接,在队列上循环,然后在单个调用中关闭连接,但是在读取队列并确定队列何时没有其他内容可提供时,会有更多的开销我尽量避免。你知道吗


Tags: 方法程序dbsql队列进程mysql原因