HiTHerE !

3. Spring Boot의 동작(1) 본문

Spring Boot/Basic

3. Spring Boot의 동작(1)

minju26 2023. 8. 22. 18:16

[1] 내장 톰캣(Tomcat)을 가짐

: 톰캣을 따로 설치할 필요 없이 바로 실행 가능.

  • Tomcat VS HTTP* 웹서버
    - TomcatWAS(Web Application Server)

    - 웹 서버(ex. Apache) 는 정적인 데이터를 처리하는 서버이며 이미지나 단순 HTML 파일과 같은 리소스를 제공하는 경우에 웹 서버를 통하면 WAS를 이용하는 것 보다 빠르며 안정적임.

    - WAS는 동적인 데이터를 처리하는 서버이며 DB와 연결되어 데이터를 주고 받거나 프로그램으로 데이터 조작이 필요한 경우 활용함.

    - 두 서버의 목적에 차이가 있기 때문에 두 개의 서버를 연동해서 사용하면 더욱 효과적인 서비스 제공 가능.

    - 사용자 요청은 HTTP 웹 서버를 통해 받고, 내부 프로그램은 WAS를 통해 처리하면 데이터를 효과적으로 처리 가능.
    • *HTTP(Hyper Text Transfer Protocol) : W3(웹) 상에서 클라이언트와 서버 사이에 이루어지는 요청/응답에 의해 정보를 주고받을 수 있는 프로토콜이며, HTML 문서를 주고받는 데 쓰인다. 주로 TCP 를 사용하고 HTTP/3 부터는 UDP를 사용함.

 

[2] 서블릿 컨테이너(Servlet Container)

: 서블릿 생성, 실행, 파괴 등 서블릿을 관리해주는 역할

 

  • 1. Request (java 관련 자원 / 최초 O)
    2. 서버가 Servlet 객체 생성
    3. 새로운 자바 스레를 생성하고 필요한 메서드를 호출
    4. Response, 스레드는 재사용을 위해 남겨둠
    5. Request (java 관련 자원 / 최초 X) -> 스레드 재사용

  • 생성할 스레드의 개수를 20개로 제한했을 때, 20개가 넘는 클라이언트 요청이 들어오는 경우에는 대기.
    사용중이던 스레드가 Response 하여 사용이 끝나면 대기하던 요청에 대하여 해당 스레드 재사용.
  • Servlet 은 객체 1개로 재사용 / 스레드는 컴퓨터의 성능에 따라 제한한 개수 만큼 재사용
    • 서블릿(Servlet) : 클라이언트의 요청을 처리하고, 그 결과를 반환하는 Servlet 클래스 구현 규칙을 지킨 자바 웹 프로그래밍 기술

::참고::

https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81%EB%B6%80%ED%8A%B8-%EA%B0%9C%EB%85%90%EC%A0%95%EB%A6%AC/dashboard

'Spring Boot > Basic' 카테고리의 다른 글

3. Spring Boot의 동작(3)  (1) 2023.09.02
3. Spring Boot의 동작(2)  (0) 2023.09.02
2. JPA  (0) 2023.08.22
1. Spring  (0) 2023.08.22