동시성 문제 해결
#115
Replies: 1 comment 1 reply
-
위와 같이 동시성 문제의 상황에서는, 클라이언트는 서버에서 알 수 없는 예외가 발생했다고 판단하는 것이 적절한 흐름이 아닐까요?! 동시성 문제를 고려한 상황까지 커스텀 예외를 도입해야하는가에 대해서 고민해보면 좋겠네요 :) |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
현재 팔로우 같은 기능에서 같은 회원을 팔로우할 수 없다는 제약 조건이 존재합니다. 팔로우를 하기 전 해당 회원에 대한 팔로우 정보가 있는지 확인하는 로직이 존재하지만, 동시에 작업이 발생하는 경우 아래와 같은 상황이 만들어집니다.
실제 동시성 테스트를 하더라도 아래와 같은 예외를 확인할 수 있습니다.
이에 대해 처리하지 않더라도
Exception.class
핸들러에 의해 처리되겠지만 클라이언트에서는 서버에서 알 수 없는 예외가 발생했다고 판단하게 됩니다. 커스텀 예외 메시지를 전달하기 위해서는 아래와 같은 코드를 작성해야 하는데DataIntegrityViolationException
을try~catch
로 잡아도 되는지에 대한 의문이 들었습니다. 여기서 잡게 된다면 DB와 소통하는 모든 코드에서 try~catch로 잡아야 하나 생각까지 들었기 때문입니다.이 부분에 대해서 어떻게 하면 좋을지 얘기해보고 싶어요 :)
Beta Was this translation helpful? Give feedback.
All reactions