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

Akka og ReactiveMongo

Jeg ville oprette driver og connection i mesterskuespilleren. Jeg ville derefter indstille arbejdsaktørerne til at tage en instans af MongoConnection som et konstruktørargument, så hver arbejder har en reference til forbindelsen (som egentlig er en proxy til en pulje af forbindelser). Derefter i noget som preStart , få mesterskuespilleren til at oprette arbejderne (som jeg antager er dirigeret) og levere forbindelsen som en arg. Et meget forenklet eksempel kunne se sådan ud:

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

Denne kode er ikke nøjagtig, men den viser i det mindste de begreber på højt niveau, jeg beskrev.



  1. Sådan får du alle nøgler fra Redis ved hjælp af redis skabelon

  2. mongodb.conf bind_ip =127.0.0.1 virker ikke, men 0.0.0.0 virker

  3. Tilføjelse af mongodb-udvidelse til php 5.6 (XAMPP)

  4. MongoDB GridFS - Er det filnavn eller filnavn