인프런 커뮤니티 질문&답변

ahnkj93님의 프로필 이미지
ahnkj93

작성한 질문수

스프링 핵심 원리 - 기본편

스코프와 Provider

강의관련 질문 드립니다.

작성

·

182

0

안녕하세요.  

친절하게 잘 설명을 해주셔서 잘 듣고 있지만 약간의  궁금한 점이 생겨 문의 드립니다.

1.  Controller쪽에서 Service를 호출하고 다시 provider를 통해 다시 MyLogger 를 get하였을때 저의 생각으로는 특별한 id 값이 필요할 것 같은데 그냥 request별로 구별하여 반환 되는 것이 잘 이해가 안됩니다. 동작 원리가 어떻게 될까요? 

2. 예제에서 여러 request가 들어왔을 때 병렬적으로 처리하는 것을 볼 수 있는데 Controller,Service에 등록된 로직이 어떻게 병렬로 처리될 수 있는지 방법이 궁금합니다.

다른일로 바쁘실수도 있겠지만 알려주시면 감사드리겠습니다.

답변 1

3

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. ahnkj93님

1. 자바 웹 서버는 고객의 HTTP 요청마다 별도의 쓰레드를 할당합니다. 자바에서는 ThreadLocal이라는 객체가 있는데, 이 객체를 내부에서 사용해서 쓰레드를 구분할 수 있습니다.(id 값 대신 쓰레드 id로 구분합니다.)

2. 1번에서 설명드린 것 처럼 HTTP 요청마다 별도의 쓰레드가 동작하기 때문에 자동으로 병렬 처리가 됩니다^^

도움이 되셨길 바래요.

ahnkj93님의 프로필 이미지
ahnkj93

작성한 질문수

질문하기