¿Necesito reutilizar el mismo Akka ActorSystem o puedo crear uno cada vez que lo necesite?

Akka 2.x requiere muchos comandos para hacer referencia a unaActorSystem. Entonces, para crear una instancia de un actor.MyActor tu podrias decir:

val system = ActorSystem()
val myActor = system.actorOf(Props[MyActor])

Debido a la frecuente necesidad de unActorSystem: muchos ejemplos de código omiten la creación del código y suponen que el lector sabe dóndesystem variable ha venido de

Si su código produce actores en diferentes lugares, podría duplicar este código, posiblemente creando másActorSystem instancias, o podrías intentar compartir la mismaActorSystem instancia al referirse a algún global o pasando elActorSystem alrededor.

La documentación de Akka proporciona unaVisión general de los sistemas de actores. bajo el título 'Sistemas de actores', y haydocumentación de laActorSystem clase. Pero ninguno de estos ayuda mucho para explicar por qué un usuario de Akka no puede simplemente confiar en Akka para gestionar este problema.

Pregunta (s)

¿Cuáles son las implicaciones de compartir lo mismo?ActorSystem ¿Objetar o crear uno nuevo cada vez?

¿Cuáles son las mejores prácticas aquí? Pasando alrededor de unActorSystem Todo el tiempo parece sorprendentemente mano dura.

Algunos ejemplos dan laActorSystem un nombre:ActorSystem("MySystem") otros solo llamanActorSystem(). ¿Qué diferencia hace esto y qué pasa si usas el mismo nombre dos veces?

Haceakka-testkit requiere que compartas un comúnActorSystem con el que pasas a laTestKit ¿constructor?

Respuestas a la pregunta(2)

Su respuesta a la pregunta