Python forking
跳转到导航
跳转到搜索
以下数据库(的驱动)是「forking-safe」的,在 fork 之后可以继续使用原来的连接/对象。它们的连接池在检测到 pid 变化之后会重新连接:
以下数据库(的驱动)不是「forking-safe」的,在 fork 之后不能继续使用原有连接/对象:
- psycopg2[1][2] (PostgreSQL)
- MySQL Connector/Python(已经证实连接不能共用)(MySQL)
使用 SQLAlchemy 时要注意,一定要在连接数据库前 fork,或在 fork 之后关闭连接。
外部链接
- PEP 249 -- Python Database API Specification v2.0, 关于
threadsafety部分