Page History
AKKA의 라우팅은 액터에서 발생하는 메시지를 다양한 장치를 이용하여 분배적략을 세울수 있습니다.
로컬에서는 동시성/병렬성 문제를 해결할수 있으며 클러스터내에서도 동일하게 작동하기 때문에
클라우드 분산컴퓨팅 환경에서도 동일한 컨셉으로 이벤트처리 분배 전략을 세울수 있는것이 장점입니다.
라우터와 관련된 용어 정리
- 라우팅 : 분배로직
- 라우터 : 분배지점
- 라우티 : 분배된 작업이 도달하는 작업자
테스트 시나리오
- 작업 노드는 5개를 지정
- 50개의 작업 이벤트를 한꺼번에 발생시킨다발생시킴 작업분배
- 작업노드중 하나는 특정 1노드는 항상 300ms 지연을 시킨다.
AKKA에서는 다음과같은 라우팅을 제공하며 위와 같은 조건으로 전체 처리메시지 검사를 포함 전체 완료에 걸리는 시간을
유닛테스트화 해서 측정해보았습니다.
먼저 테스트에 이용된 AKKA제공 라우팅을 살펴보겠습니다.테스테에 Akka제공 라우팅
RoundRobin
가장일반적인 순차 균등 분배로직입니다.
Random
순차를 고려하지 않는 랜덤 분배입니다.
SmallestMailbox
메시지가 덜 쌓인
BalancingRouting
라우팅 | 총완료시간 | Note |
---|---|---|
RoundRobin | 3초 294ms | |
Random | 2초 942ms | |
SmallestMailBox | 3초 272ms | |
BalancingRouting | 490ms | |