Как я могу проверить, жив ли удаленный актор, для которого я получил actRef через ActorFor? Буду признательна за любую ссылку на документацию. Я использую Akka из Scala.
Я видел ссылки на супервайзеров и Deathwatch, но не думаю, что мой вариант использования нуждается в таком тяжелом оборудовании. Я просто хочу, чтобы мой клиент проверял, использует ли мастер известный путь, и если он отправляет сообщение, представляющее себя. Если мастер не работает, он должен немного подождать, а затем повторить попытку.
Обновление 2: Предложения заключаются в том, что я просто использую тест на пинг-понг, чтобы увидеть, жив ли он. Я понимаю, что это что-то вроде
implicit val timeout = Timeout(5 seconds)
val future = actor ? AreYouAlive
try{
Await.result(future, timeout.duration)
}catch{
case e:AskTimeoutException => println("It's not there: "+e)
}
Я думаю, что меня смутило наличие исключений в логах, которые остались там и сейчас. Например.
Возможно, это так работает, и я должен принять ошибки/предупреждения в журналах, а не попытаться защититься от них?