1

Как работает MongoClient и создает объединение пулов или создание потоков?Клиентское соединение в Pymongo

Каковы основные ресурсы, используемые при создании нескольких соединений?

Мой главный резон для того, чтобы спросить это? Я создал несколько классов в python, который представляет функциональность одиночной коллекции в mongodb. В каждом классе я создаю клиента

self.client = MongoClient(hostname, port) 

Какие ресурсы мне нужно беспокоиться и каковы могут быть проблемы с производительностью?

Если есть способ, я могу обмениваться одним клиентом по всем классам?

ответ

1

Сделайте один MongoClient. Сделать это глобальная переменная в модуле:

client = MongoClient(host, port) 

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