아래 글은 [자바 웹 개발 워크북 - 엄진영 저]에 있는 내용을 요약 정리 한 것입니다.
1.1 데스크톱 애플리케이션
- 장점 : PC에 설치한 후에 실행되기 때문에 PC의 모든 자원을 제한 없이 자유롭게 사용할 수 있다.
- 단점 : 배포가 번거롭고, 보안에 취약하며, 공동작업이 불편하다.
1.2 클라이언트·서버 애플리케이션
- 장점 : 기능 변경이나 추가에 대해 보다 유연하게 대처 가능
- 단점 : 다중 클라이언트 접속 불가
1.3 다중 클라이언트 요청처리
- 장점 : 각 클라이언트 요청러리를 쓰레드가 담당하기 때문에 동시 작업이 가능하다.
- 단점 : 소켓 및 쓰레드가 도입되므로 프로그래밍이 복잡하다.
1.4 클라이언트·서버 아키텍처의 진화
1) 전통적인 클라이언트·서버 구조
- 장점 : 자료 중복 및 자료 불일치 문제 해결
- 단점 :
- 애플리케이션 변경 시 재배포 필요
- 클라이언트에서 DBMS에 직접 접속 → 아이디, 암호 노출 위험
2) 애플리케이션 서버 도입
- 장점 :
- 애플리케이션 서버를 두어 비즈니스 로직을 전문적으로 처리
- 클라이언트는 실행 결과 출력만을 담당 → 씬 클라이언트(thin client) 가능
- 애플리케이션 서버에서 DBMS 접근 → 보안 강화
- 기능 추가 또는 변경 시에 서버쪽만 변경 → 배포가 쉬움
3) 웹 기술 적용
- 특징 : 웹 표준 기술을 활용하여 클라이언트와 서버 간에 통신
- 클라이언트 애플리케이션을 배포할 필요 없음
- 소켓 프로그래밍과 멀티 스레드 프로그래밍에서 탈출
- 이기종 시스템 간에 매끈한 연결 지원
- 서버쪽에서 UI생성하므로 씬 클라이언트 구축 용이
1.5 웹 애플리케이션 아키텍쳐의 특징
<웹 애플리케이션 구조> → WAS
- 특징 :
- 소켓 & 멀티 스레드 프로그래밍에서 탈출
- 기능 변경 및 추가가 용이
- 단점 : 매번 출력 화면을 서버에서 만들고, 클라이언트는 화면을 내려받아야 한다. → 네트워크 자원의 낭비
- 해결 방법 :
- AJAX(Asynchronous JavaScript and XML)
- 변화에 유연한 대응이 가능한 애플리케이션 아키텍처(MVC, 빈 관리 컨테이너, 의존 객체 주입)
'BOOK > [자바 웹 개발 워크북]' 카테고리의 다른 글
[자바 웹 개발 워크북] Chapter03 서블릿 프로그래밍 (0) | 2021.07.26 |
---|---|
[자바 웹 개발 워크북] Chapter02 웹 프로그래밍의 기초 다지기 (0) | 2021.07.25 |