2017-01-17 15 views
0

私は基本的に適切な方法で俳優のモデルを理解したいと思っていました。 以下のコードでは、akkaの俳優、actorsystem、actormaterializer、actorreffactory、およびディスパッチャーを理解したいと思います。Akka HTTPの俳優システム

import akka.actor.ActorSystem 
import akka.http.scaladsl.Http 
import akka.http.scaladsl.server.Directives._ 
import akka.stream.ActorMaterializer 

import scala.io.StdIn 

object MainRunner extends App { 

    implicit val system = ActorSystem("mySystem") 
    implicit val materializer = ActorMaterializer 
    implicit val ec = system.dispatcher 

    val route = 
    path("hello") { 
     get { 
     complete("Congratulation , this is your response") 
     } 
    } 

    val bindingFuture = Http().bindAndHandle(route, "localhost", 8080) 

    println(s"Server online at http://localhost:8080/\nPress RETURN to stop...") 
    StdIn.readLine() // let it run until user presses return 
    bindingFuture 
    .flatMap(_.unbind()) // trigger unbinding from the port 
    .onComplete(_ => system.terminate()) // and shutdown when done 
} 
+0

この小さなコードスニペットでさえ、多くのことが起こっています。あなたが私たちにあなたに全部説明することを望むなら、それは少なくとも数ページのドキュメントを必要とするでしょう。あなたはこの物を自分で読んで、混乱の特定の点があるときに戻るべきです。 – Max

+0

ドキュメント以外のものをお勧めできますか –

答えて

1

あなたが本当ににしたい俳優モデルを理解していれば、ウィキペディアentryはあなたの最善の策です。 Akkaのアクターを理解したい場合は、Akka documentationが最適です(ActorSystem、DispatcherはAkkaアクターモデル実装の実装の詳細です)。 Akka-HTTPに移行する必要があることを理解した後でなければなりません。それはStreamsのコンセプトに基づいており、Lazyリストとして緩やかに定義できます。 AkkaストリームはActorMaterializerを通じて "マテリアライズ"されます。ハッピーラーニング!

0

書籍を入手するように人々に伝えるために、有効なStackOverflow回答ですか?もしそうなら、私はちょうどあなたのための正しいヒントを持っているかもしれません - Lightbend Website(無料登録が必要です)からAkka in Actionの最初の3つの章を無料で得ることができます。私が正しくリコールした場合、第2章ではあなたのコードによく似たコードスニペットがあり、それを1行ずつ説明します。

関連する問題