클라우드
- 웹을 기반으로 하여 서버 또는 앱, 콘텐츠 등을 제공하는 것
데스크탑 앱의 문제점
- 배포가 번거롭 다
- 보안에 취약하다
전통적인 클라이언트/서버 아키택처
- 클라이언트 : UI, 비즈니스 로직
- 서버 : 데이터처리(DBMS)
- 단점 프로그래임이 변경딜 때마다 PC에 다시 설치해야 해. 클라이언트가 DBMS로 바로 접속하기 때문에 보안 문제
개선된 클라이언트/서버 아키택처
- 클라이언트 : UI, 입력데이터 검증
- 애플리케이션 서버 : 비즈니스 로직, 사용자 접근관리
- 서버 : 데이터처리 (DBMS)
배치(Deployment)란
클라이언트에서 서비스를 요청했을 때 톰캣 서버가 애플리케이션을 실행할 수 있도록 설치하는 것.
기존의 C/S 환경
- 클라이언트 : UI 로직
- 서버 : 비즈니스로직
웹 환경
- 클라이언트 : UI 로직 다운로드 후 실행
- 서버 : UI로직, 비즈니스 로직
웹 애플리케이션의 단점
- 서버는 같은 화면을 반복해서 만들어야 하고, 클라이언트는 반복해서 내려받아야 해. 네트워크 자원에 대한 오버헤드
- AJAX로 개선 가능 (화면은 그대로 두고 데이터만 받아오는 것)
- 변화에 유연한 대응이 가능한 애플리케이션 아키택처로 개선 가능 (MVC 아키택처, 빈 관리 컨테이너, 의존 객체 주입 등)