스프링 비동기(1) - TaskExecutor로 요청을 비동기 처리
INTRO 서블릿 API 초창기 시절엔 구현 컨테이너 대부분이 요청당 스레드 하나만 사용했다. 하지만 서블릿3 명세부터 HTTP 요청이 기하급수적으로 늘면서 HTTP 요청을 비동기로 처리할 수 있게 되었다. 서블릿3.1 호환 컨테이너에서 제대로 사용한다면 모든 작업을 넌블로킹 형태로 작동시킬 수 있다.(리소스 역시 넌블로킹 형태로 작동해야 한다.) 예전에는 웹 애플리케이션은 유저의 요청을 접수한 서버가 HTML을 렌더링하고 이를 다시 클라이언트에 돌려줬다. 지금은 HTML 렌더링 작업이 클라이언트로 넘어갔고 HTML을 직접 주는 방식이 아니라 JSON, XML등의 다른 표현형을 덜려주는 식으로 통신 방법이 바뀌었다. XMLHttpRequest, 서버 전송 이벤트, 웹소켓 등 흥미로운 기술들이 있다. 과제..
2024.03.02