Page History
...
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
public class BasicActor : UntypedActor { private ILoggingAdapter log = Context.GetLogger(); protected override void PreStart() { } protected override void PreRestart(Exception reason, object message) { } protected override void OnReceive(object message) { //handle messages here log.Info("BasicActor:GetSomeMessage " + message.ToString()); Sender.Tell("OK"); } protected override void PostStop() { } protected override void PostRestart(Exception reason) { } } |
메시지 수신처리외에 다양한 이벤트에 대한 처리기핸들링 가능합니다.액터의 라이프 사이클과 관련된 Hooks 대한 처리가 가능합니다.
Hooks :
- PreStart : 액터가 생성될시 호출이 됩니다.
- PostStop : 액터의 작동을 멈출시 호출이 되며, 만약 멈출 액터에게 메시지를 보내면 DeadLeeters가 발생됩니다.
- PreRestart : 액터문제로인해 복구를위해 재시작이 될때, 실패 메시지를 통보받으며 새롭게 준비하는데 좋은장소입니다.
- PostRestart : 재시작을 야기한 예외를 가지고 호출되며, 기본적으로 정상적인 시작 사례와 유사합니다.
Actors-Fault Tolerance Part에서 좀더 자세한 장애처리 전략 설명
Monitoring
어떠한 액터에게, 특정액터를 감시하게 하거나 kill을 할수 있는 권한을 준다고 했을시
...