Экземпляр MongoClient с использованием pymon go против fork () - PullRequest
0 голосов
/ 01 мая 2020

Итак, прежде всего, я хочу использовать django, django rest framework, mongoengine и pymon go вместе.

Mongoengine для ODM, Pymon go для взаимодействия с БД и DRF для спокойного API.

Проблема заключается в следующем:

from pymongo import MongoClient
from bson.json_util import dumps

class MongoConnector:
    username = 'user'
    password = 'pass'
    host = 'localhost'
    port = '27017'
    url = host + ':' + port
    client = MongoClient(mongo_url,username=username,password=password,authSource='admin',authMechanism='SCRAM-SHA-256')
    def find(self,db, collection, name):
        db = client[db]
        collection = db[collection]
        response = collection.find_one({"name":str(name)})
        return dumps(response)

Я получил это от: { ссылка }

Точка с помощью этого фрагмента кода я могу поместить его в какой-то файл моего проекта, а затем импортировать класс в мои конечные точки API и выполнить взаимодействие с БД, например, создать экземпляр MongoClient.

Это выглядит легко работать с, но мои вопросы: ¿Это безопасно?

have Есть ли какие-то проблемы с uwsgi или что-то, связанное с производством? как потоки, многопроцессорность или что-то еще, я имею в виду, я прочитал некоторые документы и вопросы, но не совсем ясно, например:

https://api.mongodb.com/python/current/faq.html?highlight=wsgi#using -Pymon go -With- многопроцессорная обработка

Я знаю, что pymon go не работает с форком, но я точно не знаю, как uwsgi использует его в производстве.

Спасибо, если кто-то может мне помочь с этим.

...