액터는 상태, 행동, 메일박스, 자식 액터, 그리고 감독 전략을 담는 컨테이너이다.
이 모든 것은 액터 레퍼런스 뒤에 캡슐화되어 있다.
액터에는 명시적인 생명주기가 있으며, 더 이상 참조되지 않아도 자동으로 파괴되지 않는다.
액터 레퍼런스는 액터 객체를 외부로부터 보호하기 때문에 액터는 액터 레퍼런스를 사용하여 외부에 표현된다.
이 레퍼런스는 자유롭게 전달될 수 있으며, 액터의 상태에 접근할 수 없다.
액터 객체는 액터가 있을 수 있는 여러 상태를 반영하는 변수를 일반적으로 포함한다.
이러한 데이터는 다른 액터로부터 보호되어야 하며, Akka는 이를 단일 스레드로 처리하여 동시성 문제를 해결한다.
메시지가 처리될 때마다 액터의 현재 행동과 일치하는지 확인된다.
행동은 시간이 지남에 따라 변경될 수 있다.
액터의 목적은 메시지 처리이며 메일박스는 발신자와 수신자를 연결하는 부분이다.
여러 메일박스 구현이 있으며, 기본적으로는 FIFO(First-In, First-Out) 방식이지만 메시지의 우선 순위에 따라 다르게 처리할 수 있다.
각 액터는 잠재적으로 부모이다. 자식을 생성하여 작업을 위임하면 자동으로 감독하게 된다.
액터는 예상치 못한 예외 처리를 위한 전략을 가지고 있으며 이것은 Akka에 의해 투명하게 처리된다.
액터가 종료되면 모든 리소스를 해제하고 메일박스의 남은 메시지를 '죽은 편지 메일박스(dead letter mailbox)'로 이동시킨다.