MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Akka и ReactiveMongo

Бих създал driver и connection в главния актьор. След това бих настроил работните актьори да вземат екземпляр на MongoConnection като аргумент на конструктора, така че всеки работник да има препратка към връзката (която всъщност е прокси към набор от връзки). След това в нещо като preStart , накарайте главния актьор да създаде работниците (които предполагам, че са маршрутизирани) и да предостави връзката като аргумент. Много опростен пример може да изглежда така:

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 = {
    ...
  }
}

Този код не е точен, но поне показва концепциите на високо ниво, които описах.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Възможно ли е изравняване на заявката за резултат на MongoDB?

  2. MongoDB:Актуализирайте поле на елемент в масив със съвпадение на друго поле на този елемент

  3. Групирайте по ден с множество полета за дата

  4. Java/MongoDB заявка по дата

  5. Еквивалент на Java драйвер за Object.bsonsize( doc) на обвивката на JavaScript?