Jag har använt PyMongo med Gevent och här är några saker du måste se upp med:
- Instantiera endast en
pymongo.Connection
objekt, helst som en global variabel eller variabel på modulnivå. Detta är viktigt eftersomConnection
har inom sig en pool! - Monkey lappar allt, eller åtminstone BÅDE socket och tråden. På grund av användningen av lokala trådar i
Connection
, det räcker inte med enbart patchning. - Kom ihåg att ringa
end_request
för att återställa anslutningen till poolen.
Svaret på din fråga är varsågod, PyMongo fungerar alldeles utmärkt med Gevent.