Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

우리가 원하는 몇가지 메시지 기능을 연결하면 됩니다.

실패한 메시지를 고전적인 방법에서는 실패할시 재전송을 시도하였을것입니다. 하지만 실패원인을 모두 확인하는것은 불가능에 가깝고

AtLeastOnceDelivery 재시도 하였는데 AtLeastOnceDelivery 에서는 성공하지 못한(특정시간이내에) 메시지에대해서 재전송을 하게됩니다.


실패원인에 따라 다음과같이 개선점도 필요합니다. 직접 설계에 반영 해보세요

  • 물리적 네트워크 에러라고 판단시 대처전략과 이후 복구시 모두 보낼수 있는 방법?
  • 실패 처리에대해 특정 횟수이상 재시도 금지
  • 카프카의 세부적인(resOne.Error) 에러에대해 세부적인 에러 핸들링
  • 그럼에도 불구하고 중복메시지가 발생할수 있는 가능성 ( 카프카의 응답이느릴때, 메시지 승인처리 악순환이 반복되는 상황)

참고문서: https://doc.akka.io/docs/akka/current/persistence.html#at-least-once-delivery  (AKKA SCALA 의 오리지널 문서)

...