小编Ron*_*sky的帖子

如何在python 2.7中使用pymongo多处理池

我正在使用 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)

python multiprocessing mongodb pymongo python-requests

2
推荐指数
1
解决办法
4575
查看次数