Какой минимальный код требуется для взаимодействия двух локальных экземпляров с актерами Akka?

#scala #networking #messaging #actor #akka

#scala #сеть #обмен сообщениями #актер #akka

Вопрос:

Интересно, какой минимальный код требуется для запуска двух экземпляров приложения на компьютере, которые могут отправлять и получать сообщения друг от друга.

Насколько я понимаю, мне нужно

  1. для запуска актора, который может обрабатывать сообщения.
  2. чтобы сообщить этому экземпляру, что есть другой экземпляр, на который можно отправлять сообщения.

Как я могу сделать 1. и 2. в Akka?

Ответ №1:

С домашней страницы Akka:

 // server code
class HelloWorldActor extends Actor {
  def receive = {
    case msg => self reply (msg   " World")
  }
}
remote.start("localhost", 2552).register("hello-service", actorOf[HelloWorldActor])

// client code
val actor = remote.actorFor("hello-service", "localhost", 2552)
val result = (actor ? "Hello").as[String]