웹 어플리케이션 이해
1. 웹어플리케이션 아키텍처의 특징
1) 웹 어플리케이션 서버 구조
- 클라이언트와의 통신은 웹 서버가 전담. 이로인해 네트워크 및 멀티 스레드 프로그래밍으로 부터 탈출.
- 애플리케이션 서버는 애플리케이션 실행 및 관리에 집중.
- NginX / Apatch : Path에 따라 어느 WAS로 갈지 설정할 수 있다.
- 앞단 웹서버의 장점 : 오류시 대응이 빠르고, 운영이 편해진다.
- 웹서버(정적) → WAS(동적) WAS는 웹어플리케이션 여러개를 배치할 수 있다. 웹어플리케이션 끼리는 서로 정보공유가 안된다.
2) 웹 어플리케이션 특징
- 웹 환경에선 비즈니스 로직과 UI 로직을 모두 서버에 배치해 기능이 추가 되거나 변경 되더라도 서버쪽만 바꾸면 된다.
- 다만 클라이언트는 애플리케이션을 실행할 때마다 UI 로직을 내려받아야 하기 때문에 너트워크 오버헤드가 발생한다.
이를 해결하려 AJAX라는 기술 등장. 같은 화면에서 데이터만 바뀔 시, 화면은 그래로 두고 데이터만 받아오는 것.
- 실행과정 :
- C/S 환경에선 다중 클라이언트 동시 요청처리 위해 서버는 멀티 스레드 프로그래밍을 해야했다.
- 하지만 웹 환경에선 웹 브라우저와 웹 서버가 그 부분을 대신 처리해준다.
- 서버 소스
- 크라이언트가 보낸 데이터를 받아 연산 수행 후 결과 출력하는 클래스
- HttpServlet 클래스를 상속받고 있다. doGet()메서드를 재정의 해야 한다.
- 클라이언트와 연결을 수행하는 네트워크 관련 코드를 찾아 볼수 없고,
- 멀티 스레드 관련 코드 또한 찾을 수 없다.
웹서버와 톰캣 애플리케이션이 대신 처리하기 때문.
댓글
댓글 쓰기