2017-08-03 7 views
0

初心者のアッカの例のほとんどがそうのような俳優・システムのstop()shutdown()メソッド呼び出し主張するように見える:アッカデーモンサービス

object Main extends App { 
    // create the ActorSystem 
    val system = ActorSystem("HelloSystem") 

    // put your actors to work here ... 

    // shut down the ActorSystem when the work is finished 
    system.stop 
    system.shutdown 
} 

をしかし、どのようなあなたのアッカアプリが実行中のサービスであることを意味するならば、それは(べきおそらく)永遠に生きる?それが始まり、俳優システムが作成され、作業(接続されたクライアントなどから来るかもしれない)が行われる必要があるまで、単にアイドル状態になっているアクターがいますか?

は、それだけ、つまり(俳優システムを起動しても、それを残して/初期化するなぜ/なぜない?

答えて

1

はい、それは大丈夫です?完全stopshutdownを呼び出す省略します。これは、同様の問題であるとOKですAkkaHTTPの実装では、ソケットを開いてリクエストを待つアクターを起動させます。

1つの問題が考えられます。短命の俳優(リソースを解放するために)不要になった後に、特にアクターがステートフルな場合は、停止する必要があります。

その問題についてブログ記事を投稿しました:https://mikulskibartosz.name/always-stop-unused-akka-actors-a2ceeb1ed41