MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

pymongo + gevent:lanciami una banana e solo monkey_patch?

Ho usato PyMongo con Gevent e qui ci sono alcune cose a cui devi fare attenzione:

  1. Crea un'istanza solo di un pymongo.Connection oggetto, preferibilmente come variabile globale oa livello di modulo. Questo è importante perché Connection ha al suo interno una piscina!
  2. Monkey patch tutto, o almeno ENTRAMBI socket e threading. A causa dell'uso di thread locali in Connection , il patching del socket da solo non è sufficiente.
  3. Ricordati di chiamare end_request per ripristinare la connessione al pool.

La risposta alla tua domanda è vai avanti, PyMongo funziona perfettamente con Gevent.