2017-01-12 4 views
0
conn_pf = pymongo.Connection(ip,27023,slaveOk=True) 

위의 내용을 통해 conn_pf.close()을 사용하여 세션을 닫을 수 있습니다.pymongo 세션을 닫아야합니까?

그러나 :

conn_pfname = pymongo.Connection(ip,27023,slaveOk=True).__getattr__(resource+"_pfname").__getattr__("data") 

conn_pfname.close를 사용하여 닫을 수 없습니다. 콜렉션 유형에 가까운 메소드가 없다고 말합니다. 내가 두 번째 사건에서 정말로 세션을 열었습니까?

답변

1

아니요, PyMongo 연결을 닫을 필요가 없습니다. 최신 버전으로 업그레이드하십시오

또한 http://api.mongodb.com/python/current/faq.html#how-does-connection-pooling-work-in-pymongo

, "연결"과 "slave_ok"와 같은 기존의 API를 년 전 PyMongo에서 삭제 된 : 그들이 PyMongo의 연결 풀링 당신에게 가장 효율적인 성능을 제공 너무 열 남겨주세요 가장 정확하고 효율적인 운전자. 사용 MongoClient :

http://api.mongodb.com/python/current/tutorial.html

+0

내 관심사는 내가 여러 연결을 열 (200 등)를 닫지 않는 경우, 다음은 (내 컴퓨터보다 더 중요하다) 다른 생산 기계 어려울 수있다 엽니 다 내가 대본을 통해 열어 둔 너무 많은 유휴 연결 때문에 몽고에 관한 세션. 내가 맞습니까? –

+0

하나의 MongoClient 만 만들고 프로그램 기간 동안 사용하십시오. 프로그램이 멀티 스레드가 아닌 경우, MongoClient는 MongoDB에 2 개의 연결을 엽니 다. 연결 풀링 FAQ를 참조하십시오. http://api.mongodb.com/python/current/faq.html#how-does-connection-pooling-work-in-pymongo –