2016-08-19 3 views
0

Ich erstelle meine Akka Schauspieler mit Akka Spring integration . Das Problem ist, dass es unbenannte Aactors zu erstellen scheint, was nicht empfohlen wird. Meine Akka configAkka Frühling Integration setzt nicht Schauspieler Name

AkkaDemo{ 
akka.actor.deployment { 

    /rootActor { 
     nr-of-instances = 5 
    } 

}

Wenn ich meine Schauspieler schaffen als

ActorRef rootActor = system.actorOf(SpringExtProvider.get(system).create("rootActor").withRouter(new RoundRobinPool(5)), "root"); 

Der Weg des Schauspielers

akka://AkkaDemo/user/root/$a 

ist, das bedeutet, dass der "rootActor" name ignoriert und Akka schuf einen Schauspieler mit dem Namen $ a. Ich frage mich, ob es eine Möglichkeit gibt, einen benannten Schauspieler über die Spring-Integration zu erstellen?

+0

Es scheint, dass das Problem mit dem Router ist, der den Namen des Schauspielers entführt. Wenn ich den Router überspringe und einfach rufe ActorRef rootActor = system.actorOf (SpringExtProvider.get (system) .create ("rootActor"), "root"); Der Pfad lautet akka: // AkkaDemo/user/root. Ich bin mir nicht sicher, ob es überhaupt möglich ist, die Router- und Actor-Namen zusammen anzugeben – MrkK

Antwort

0

Der Grund dafür ist die der Router: Wenn ein Schauspieler erstellt wird .withRouter (...) der Router Schauspieler erhält den Namen des Schauspielers und die Instanzen der Akteure gegeben $ .. Namen von Akka

Verwandte Themen