Programing/Akka

Akka Actor / Stream / Cluster 을 이용한 확장 가능한 Task 단위의 시스템

BUST 2018. 8. 15. 21:59


Akka Actor / Stream / Cluster 을 이용한 확장 가능한 Task 단위의 시스템

컴포넌트

  • Task Coordinator
    • 전체 TaskNodeManager를 관리하는 Actor
  • Task Node Manager
    • Cluster Node의 Task를 관리하는 Actor
  • Task Actor
    • Task를 관리하는 Actor
  • Task
    • Akka Stream으로 구성된 실제 작업의 단위
    • Akka Stream을 하나 하나의 Flow을 Actor를 통해 관리를 할수 있다 (mapAsync operator, ask)
      • Cluster Aware Router 를 이용하면 Scale out이 가능한 기능을 구현을 할수가 있다.
      • Worker Node에는 Flow단위 만를 처리를하고 TaskActor의 Task(Stream)을 Flow만 관리를 하는 구조로도 확장이 가능하다.

활용된 기능

  • Akka Cluster Singleton Actor
  • Akka Actor
  • Akka Stream