Web Architecture 정리

영진·2023년 1월 24일
0

AWS

목록 보기
12/17

web과 was에 대해 알아보던 중 우연히 Web Architecture에 대해서 보게 되었다.
이번에는 Web Architecture 대해서 한 번 알아보도록 할 것이다.


Web Architecture 동작

동작구조는 다음과 같다.
Client -> Web Server -> WAS -> DB

동작과정


1. Web Server는 클라이언트로부터 HTTP 요청을 받는다.

2. Web Server는 클라이언트의 요청을 WAS에 전달한다.

3. WAS는 관련된 Servlet을 메모리에 올린다.

4. WAS는 web.xml을 참조하여 해당 servlet에 대한 쓰레드를 생성한다.

5. HttpServletRequest와 HttpServletResponse 객체를 생성하여 Servlet에 전달한다.

  • 5-1. Thread는 Servlet의 service() 메서드를 호출한다.
  • 5-2. service() 메서드는 요청에 맞게 doGet() 또는 doPost() 메서드를 호출한다.

6. doGet() 또는 doPost() 메서드는 인자에 맞게 생성된 적절한 동적 페이지를 Response 객체에 담아 WAS에 전달한다.

7. WAS는 Response 객체를 HttpResponse 형태로 바꾸어 Web Server에 전달한다.

8. 생성된 쓰레드를 종료하고, HttpServletRequest와 HttpServletResponse 객체를 제거한다.


Web Architecture 계층

web Architecture의 계층은 크게 3가지로 분류 할 수 있다.
우리는 그것을 Web Application Three Tier Architecture, 간단하게 Three Tier Architecture라고 부른다.

Presentation Layer : 유저와 브라우저를 이용해 직접적으로 접촉을 하는 계층이다.

Application Layer : 유저의 요청을 브라우저로부터 받아서 처리하는 계층이다. 애플리케이션 서버가 이 계층에 포함된다.

Data access Layer : 애플리케이션의 데이터 저장소에 접근하여 데이터를 불러오거나 저장을 담당하는 계층이다.

Cross-cutting : 주로 보안, 통신, 운영 관리 등을 위한 요소들이다.

Third-party integrations : 제3의 API 서비스를 이용하는 것을 의미한다.

인용자료
1. https://ittrue.tistory.com/189
2. https://gmlwjd9405.github.io/2018/10/27/webserver-vs-was.html

profile
I'm good at cloud computing.

0개의 댓글