쓰레드 풀

    [스프링] 동시 요청 처리(멀티쓰레드)

    [스프링] 동시 요청 처리(멀티쓰레드)

    앞선 포스팅에서 클라이언트가 싱글톤으로 관리되는 서블릿을 동시에 요청했을 때, 멀티쓰레드를 사용하여 이를 지원한다고 했었다. 멀티쓰레드가 뭔지, 어떻게 동시 요청을 처리하는지 간단히 알아보자. 멀티쓰레드 멀티쓰레드 이전에 쓰레드의 개념부터 살펴보자. 쓰레드란? 쓰레드란 프로그램(프로세스)실행의 단위이며 하나의 프로세스는 여러 개의 쓰레드로 구성이 가능하다 하나의 프로세스를 구성하는 쓰레드들은 프로세스에 할당된 메모리, 자원 등을 공유한다 프로세스와 같이 실행, 준비, 대기 등의 실행 상태를 가지며 실행 상태가 변할 때마다 문맥교환(Context Switching)을 수행한다 즉, 쓰레드는 프로그램 실행의 단위라고 생각하면 된다. 위 그림에서 서블릿 객체를 호출하는 것을 프로그램의 실행 단위인 쓰레드가 하..