-
카테고리
-
세부 분야
백엔드
-
해결 여부
미해결
TraceId 관련하여 질문 드립니다
22.10.04 16:12 작성 조회수 381
0
안녕하세요 수업 잘듣고 있습니다!
다름이 아니라 수업 도중 TraceId 와 Status 관련하여 개념이 헷갈려서 질문 드립니다.
제가 아는 Id 의 경우는 식별자여서 오로지 uuid 만 보관하고 사용해야 한다고 생각하는데 수업에서는 level을 두고 그곳에서 +1 -1 을 진행하신점이 왜 그런 방식으로 하시는 것인지 궁금합니다.
제 생각으로는 Status 쪽에서 level 을 관리해야하는 것이 아닌가 생각이 들어 여쭈어 봅니다.
질문의 핵심은 어떤 필드를 TraceId에 넣어야 하고 어떤 필드를 Status 에 넣어야하는지 명확한 기준이 있는지 이고 그 기준은 어떤 것인지 궁금합니다.
추가적으로 spring 을 공부하면서 Holder라는 관용구를 상당히 많이 보는데 이 holder 라는 객체들의 역할이 무엇인지 궁금합니다.
감사합니다
답변을 작성해보세요.
0
김영한
지식공유자2022.10.10
안녕하세요. hsg0208님
Id를 구성할 때는 여러가지 필요한 내용들을 복합해서 넣기도 합니다. 이 애플리케이션 안에서 필요한 개념을 녹이기 위해 이런 모양을 했다고 생각하시면 됩니다.
Holder는 무언가 들고(가지고) 있는 객체들을 뜻합니다.
감사합니다.
hsg0208
질문자2022.10.10
답변 감사합니다.
그런데 id 객체 가 왜 불변객체여야 하는지 잘 와닿지 않습니다. createNextId 가 아닌 updateNextId 형식으로 threadLocal 에 존재하는 Id 객체를 업데이트 시키는 방안에는 따로 문제가 있을까요???
김영한
지식공유자2022.10.16
안녕하세요. hsg0208님
생각하신 것 처럼 변경해도 상황에 따라서 크게 문제가 되지는 않습니다.
다만 id를 변경하게 되면 버그를 로그등을 남길 때 오류를 추적하기가 매우 어려워집니다.
감사합니다.
답변 1