• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    미해결

4분 20초에 동시성에 문제가 있을수 있다고 말씀해주셨는데요.

21.10.07 16:20 작성 조회수 291

0

[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? 예
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예
3. 질문 잘하기 메뉴얼을 읽어보셨나요? 아니오

[질문 내용]
4분 20초에 실무에서는 동시성을 고려해야 할수 있다고 말씀해주셨는데요.

저코드에서 동시성에 관련된 문제가 어떻게 발생이 되는지 알려주시면 감사하게습니다.

답변 1

답변을 작성해보세요.

2

David님의 프로필

David

2021.10.07

안녕하세요. 이준수님, 공식 서포터즈 David입니다.

.


시퀀스를 하나씩 업데이트하여 회원을 저장하게 됩니다

멀티스레드로 동작하는 애플리케이션의 경우 AtomicLong과 같이 threadSafe한 타입을 사용하지 않는다면 이미 A스레드에 의해 증가된 시퀀스가 B스레드가 들고 있던 값으로 덮어쓰여질 수 있습니다.

현재 코드 구조로는 동일한 시퀀스에 대한 예외처리도 없기 때문에 Map에 동일한 시퀀스를 가지게 되는 요소가 존재할 수 있게 됩니다.

Atomic 계열의 클래스를 왜 사용하는지에 대한 자세한 설명은 아래 글 "Atomic 계열의 클래스" 섹션을 확인해주세요.

https://bestugi.tistory.com/41
.
감사합니다.