2011-04-08 9 views
5

Sono molto nuovo per eventmachine e non sono stato in grado di trovare una risposta a questa domanda online.mongoid e mongomapper con eventmachine

In questo momento ho utilizzato em-mongo con eventmachine e ho scritto essenzialmente il mapper di un povero tra i documenti e i rispettivi oggetti. Volevo solo confermare che mongoid e mongomapper non possono essere usati in un ambiente di eventmachine perché bloccano e quindi sconfiggono il punto di usare eventmachine in primo luogo, e che non sto sprecando il mio tempo a scrivere questi mapper. : P

risposta

3

Da una rapida occhiata al codice sorgente mongoid e mongo_mapper, si sarebbe corretto. Il mio approccio sarebbe quello di clonare semplicemente mongoid (o mongomapper) e sostituire le connessioni HTTP di blocco con connessioni asincrone. La maggior parte dei dettagli del framework non è legata alla connessione http async e dovrebbe essere riutilizzabile. In bocca al lupo!

+0

Ho finito per accontentarmi della mia implementazione, non ho davvero bisogno della maggior parte delle funzionalità fornite da mongoid o mongomapper. Grazie. :) – nan

4

EventMachine Synchrony potrebbe essere ciò che si vuole:

https://github.com/igrigorik/em-synchrony

Supporta Mongoid e credo che lo rende thread-safe. Non l'ho provato personalmente ma sembra promettente con uno sviluppo attivo.