Akka 문서 - 액터 참조, 경로 및 주소

Ada·2023년 9월 13일

Akka

목록 보기
17/32

액터 참조(Actor Reference)

액터 참조는 ActorRef의 하위 유형으로, 주로 대표하는 액터에게 메시지를 보내는 것을 지원한다.

각 액터는 ActorContext.self 필드를 통해 자기 자신의 로컬 참조에 접근할 수 있으며,

이 참조는 다른 액터에게 답장을 받기 위해 메시지에 포함될 수 있다.

액터 경로(Actor Path)

액터들은 엄격하게 계층적으로 생성되므로, 액터 시스템의 루트까지의 감독 연결을 재귀적으로 따라가면서 주어진 액터 이름의 고유한 시퀀스가 존재한다.

이 시퀀스는 파일 시스템의 폴더를 둘러싸는 것처럼 볼 수 있으므로, 이를 '경로'라고 부르게 되었다.

액터 경로는 앵커(액터 시스템을 식별하는 요소)와 경로 요소의 연결로 구성된다.

경로 요소는 거쳐간 액터들의 이름이고 슬래시로 구분된다.

액터 참조와 경로의 차이

액터 참조는 단일 액터를 지정하며 참조의 수명주기는 해당 액터의 수명주기와 일치한다.

액터 경로는 액터에 의해 차지될 수도 있고 그렇지 않을 수도 있는 이름을 나타내며, 경로 자체는 수명주기가 없다.

액터 참조는 어떻게 얻을 수 있나?

액터 참조는 액터를 생성하거나 Receptionist를 통해 조회함으로써 얻을 수 있다.

액터 참조와 경로의 동등성

액터 참조의 동등성은 목표 액터의 실체와 일치해야 한다.

두 액터 참조는 같은 경로를 가지고 동일한 액터 실체를 가리킬 때 동등하게 비교된다.

앵터 경로 앵커

각 액터 경로에는 주소 구성 요소가 있으며, 해당 액터에 도달하기 위해 사용되는 프로토콜과 위치를 설명한다.

예시 :

"akka://my-sys/user/service-a/worker1" // 순수 로컬
"akka://my-sys@host.example.com:5678/user/service-b" // 원격

호스트와 포트 부분(예: host.example.com:5678)의 해석은 사용되는 전송 메커니즘이나 Akka 리모팅 설정에 따라 다르다.




참조

아카 공식문서 - General Concepts

profile
백엔드 프로그래머

0개의 댓글