Я использую тонкий слой python для подключения к базе данных Mongo. Я называю python из C++, и это отлично работает.Почему pymongo нерестится (так много) ожидающих соединений?
Так C++ -> Python -> Монго и обратно в Python -> C++
Я использую PyMongo и я на Windows Seven.
Я хочу знать, если база данных Монго это и работает, так что я сделать что-то вроде этого в Python: (пожалуйста, не беспокойтесь о причудливом переменной возвратного)
client = MongoClient('localhost', 27017, serverSelectionTimeoutMS = 20)
ret=[]
try:
client.server_info()
ret.append("up")
client.close()
except Exception as e:
ret.append("down")
return ret
Но это, когда сервер UP, неизменный порождает процесс (процесс «хакер» -> сеть) сидит и ждет, пока он не истечет, а не через 20 миллисекунд, но, кажется, 30 секунд. Когда я проверяю, работает ли база данных, довольно часто, я получаю сотни сеансов ожидания, процессов/соединений.
Я делаю что-то неправильно или PyMongo не так хорошо работает в Windows?
Спасибо!
Создает процесс, или нить? Откуда вы знаете, что что-то порождается - это из диспетчера задач Windows, который отслеживает вашу клиентскую программу? Или вы видите что-то в журнале mongod? –
Это открытые TCP/IP-соединения (так что некоторые формы процесса, я думаю), и я вижу их в Process Hackers -> Network Tab. – Valmond