[토비의 스프링부트] 스프링부트 Containerless; 컨테이너 리스 웹 애플리케이션 아키텍처

박상준·2024년 6월 14일
0

스프링부트는 컨테이너리스이다.

  • 컨테이너리스는
    • 컨테이너가 없다는 의미가 아니라,
    • 컨테이너를 직접 관리하지 않아도 된다 는 의미이다.
  • 서버리스 와 유사한 개념으로
    • 개발자가 서버 설치과 관리를 신경 쓰지 않고 애플리케이션 개발과 배포를 할 수 있도록 하는 방식을 말한다.

컨테이너의 정의와 역할

  • 컨테이너 애플리케이션을 실행하고 관리하는 환경을 의미한다. 웹 개발에서는 주로 서블릿 컨테이너 를 의미한다.
  • 서블릿 컨테이너는 웹 컴포넌트를 관리하고, 웹 요청을 적절한 컴포넌트로 라우팅하여 동작하게 한다.
  • 대표적인 서블릿 컨테이너는 TOMCAT 이다.

컨테이너리스의 필요성

  • 기존 서블릿 컨테이너를 사용하려면 설정 파일(XML 등) 작성, 폴더 구조 구성, 배포 및 실행 등의 많은 작업이 필요하다
  • 개발자에게 불필요하게 설정에 대해 고민하는 등 복잡성을 증가시키고, 개발 효율성을 저하시킨다.

스프링 부트와 컨테이너리스

  • 스프링 부트 는 이러한 문제를 해결하기 위하여 등장한 프레임워크이다.
  • 스프링 부트는 기본적인 설정과 환경을 자동으로 구성해 주어, 개발자가 설정에 신경 쓰지 않고 바로 개발을 시작할 수 있게 한다.
  • 이를 통하여 어플리케이션이 독립 실행형(standalone) 으로 동작할 수 있고, 복잡한 서블릿 컨테이너 설정 없이 애플리케이션을 실행할 수 있다.

스프링 부트는..

  1. 메인 메서드를 통해 시작
  2. 부트는 자동으로 서블릿 컨테이너를 시작하고, 필요한 설정을 모두 처리한다
profile
이전 블로그 : https://oth3410.tistory.com/

0개의 댓글