UserWarning: MongoClient opened before fork. Create MongoClient only after forking

前端之家收集整理的这篇文章主要介绍了UserWarning: MongoClient opened before fork. Create MongoClient only after forking前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

在python3.8 django3.0版本情况下使用celery来做了一个异步任务demo。在使用时遇到警告:

UserWarning: MongoClient opened before fork. Create MongoClient only after forking. See PyMongo’s documentation for details: http://api.mongodb.org/python/current/faq.html#is-pymongo-fork-safe

“MongoClient opened before fork. Create MongoClient only “

解决方法

在实例化MongoClient实例时加上参数connect=False

from pymongo import MongoClient
client = MongoClient(host='localhost', port=27017, connect=False)

原因:

因为pymongodb不是fork-safe,使用MongoClient的实例时必须小心 fork()。特别是,绝不能将MongoClient实例从父进程复制到子进程。相反,父进程和每个子进程必须创建自己的MongoClient实例。

猜你在找的MongoDB相关文章