sql >> Databáze >  >> NoSQL >> MongoDB

Akka a ReactiveMongo

Vytvořil bych driver a connection v hlavní herec. Potom bych nastavil pracovní aktéry, aby vzali instanci MongoConnection jako argument konstruktoru, takže každý pracovník má odkaz na připojení (což je ve skutečnosti proxy k fondu připojení). Potom v něčem jako preStart , požádejte hlavního aktéra, aby vytvořil pracovníky (o kterých předpokládám, že jsou směrovány) a dodejte spojení jako arg. Velmi zjednodušený příklad by mohl vypadat takto:

class MongoMaster extends Actor{
  val driver = new MongoDriver
  val connection = driver.connection(List("localhost"))

  override def preStart = {
    context.actorOf(Props(classOf[MongoWorker], connection).withRouter(FromConfig()))
  } 

  def receive = {
    //do whatever you need here
    ...
  }
}

class MongoWorker(conn:MongoConnection) extends Actor{
  def receive = {
    ...
  }
}

Tento kód není přesný, ale alespoň ukazuje koncepty vysoké úrovně, které jsem popsal.



  1. MongoDB:Problém při použití mongoexportu s volbou --query

  2. Monitorování a zabezpečení MongoDB pomocí ClusterControl Advisors

  3. Ověřte objekt proti schématu Mongoose bez uložení jako nového dokumentu

  4. Jak vrátit data JSON z php MongoCursor