Containerless ( 컨테이너리스 웹 애플리케이션 아키텍처 )
컨테이너리스?
- 컨테이너가 필요없다는 뜻일까? ❌
- Serverless와 유사함
- Serverless란?
서버에 대한 설치 관리 부분들을 개발자가 신경 쓰지 않고 서버 애플리케이션을 개발해서 배포하고 운영하는 것이 가능하도록 만드는 방법
- Containerless
- 컨테이너가 없는 컨테이너 관리를 신경 쓰지 않아도 된다는 뜻
Conainer란? Containerless란?
웹 프로그램을 개발한다는 것은 서버에서 동작하면서 기능을 제공해주는 여러가지 컴포넌트를 만드는 것
- 웹 요청이 들어오면 정해진 룰에 따라 요청처리를 해줄 컴포넌트에게 요청을 넘겨줌
- 어떤 컴포넌트가 웹 요청을 처리할지 결정하고, 선택하는 작업을 라우팅 또는 맵핑이라고 함
- 스프링의 핸들러 맵핑이라고 하는 것들이 이런 웹 요청을 담당하는 컴포넌트를 결정해주는 것
자바 용어로 변경한다면?
WEB COMPONENT
== SERVLET
WEB CONTAINER
== Servlet Container
- 대표적인
Servlet Container
는 톰캣!!!
전통적인 자바 웹 프로그래밍의 기본 구성
Servlet Container
안에 Servlet
들을 여러개 띄워두고
맵핑 정보를 넣으면 요청에 따라서 특정 Servlet
이 요청을 처리할 수 있도록하고 응답을 생성해서 다시 클라이언트(브라우저, API를 호출한 클라이언트)에게 돌려주는 작업들을 담당하는 Servlet Container
가 존재
Servlet
의 제한적인 사항을 좀 더 나은 방법으로 개발하기 위해 만들어진 것이 바로 Spring Container
임