akka & pekko/streams
-
fibonacci 수열 구현하기akka & pekko/streams 2023. 7. 26. 18:23
akka/pekko streams 를 이용해 fibonacci 수열을 출력한다. cyclic graph 를 구성하게 되는데, 이때 deadlock 이 발생할 수 있다. (특히 Merge 할 때) https://pekko.apache.org/docs/pekko/current//stream/stream-graphs.html#graph-cycles-liveness-and-deadlocks 이를 대응하기 위해, Merge 대신에 MergePreferred 를 사용했다. import org.apache.pekko.actor.ActorSystem import org.apache.pekko.stream.scaladsl.{Broadcast, Flow, GraphDSL, MergePreferred, RunnableGra..
-
stream 처리 완료 후 ActorSystem 종료하기akka & pekko/streams 2023. 7. 22. 18:03
toMat + run, runWith 로 실행하면 최종 리턴값이 Future 가 되는데, Future 의 onComplete method 를 이용해 종료한다. import org.apache.pekko.Done import org.apache.pekko.actor.ActorSystem import org.apache.pekko.stream.scaladsl.{Flow, Keep, Sink, Source} import scala.concurrent.Future object TestMain { def main(args: Array[String]): Unit = { implicit val system: ActorSystem = ActorSystem("pekko") val source = Source[Int](1..