我正在使用 Pymongo 和多处理池来运行 10 个进程并从 API 获取数据并将输出插入到 mongodb 中。
我想我写代码的方式做错了,因为 python 显示打开的双连接比通常情况下;例如:如果我运行 10 个进程 Mongodb 将输出 20 个或更多已建立的连接,并且我将在启动时收到以下警告:
UserWarning: MongoClient 在 fork 之前打开。用connect=False创建MongoClient,或者fork后创建客户端。有关详细信息,请参阅 PyMongo 的文档:http ://api.mongodb.org/python/current/faq.html#using-pymongo-with-multiprocessing >
即使我在 mongodb 的连接器客户端输入 connect=False 。这是一个示例代码,用于了解我如何使用 pymongo 和请求 API 在池中发送请求:
# -*- coding: utf-8 -*-
#!/usr/bin/python
import json # to decode and encode json
import requests # web POST and GET requests.
from pymongo import MongoClient # the mongo driver / connector
from bson import ObjectId # to generate bson object for MongoDB …Run Code Online (Sandbox Code Playgroud)