Download presentation
Presentation is loading. Please wait.
1
ASP 기초개념 ASP란? ActiveX 서버 컴포넌트
2
ASP(Active Server Pages)란?
개방형 서버측 환경/기술 동적 웹 기반 어플리케이션 제작을 지원 (스크립트 + ActiveX 서버 컴포넌트 + HTML) 결합 지원 구현 주로 스크립팅 언어를 사용 VBScript JScript, 등
3
ASP의 역사 버전 1.0 IIS 3(Windows Service Pack 3)의 일부분으로 공식적으로 릴리스( ) 버전 2.0 IIS 4(Windows Service Pack 4)의 일부분으로 릴리스( ) 버전 3.0 IIS 5와 함께 릴리스
4
CGI, JSP 그리고 ASP(1/6) 클라이언트-서버 모델
HTML 형태의 문서만을 사용 → 동적 웹 어플리케이션 개발이 어려움 IIS, Apache 등 웹 서버 HTML 파일 클라이언트 request response
5
CGI, JSP 그리고 ASP(2/6) CGI(Common Gateway Interface)
프로그래머가 작성하여 서버에 저장해 놓은 프로그램과 웹 서버 소프트웨어간의 인터페이스 방법 서버측 프로그램 : .pl, .php, .cgi 등 클라이언트가 CGI 파일을 요청 → 웹 서버는 해당 파일을 검색·실행 → 이의 출력을 읽어 클라이언트로 전송 사용자가 전송하는 데이터에 따르는 정보를 제공하기 위한 어플리케이션에서 사용 방명록, 장바구니 기능, 웹상에서의 투표, 신용카드 유효성 조회, 카운터, 채팅, 검색 엔진 등 웹 서버 클라이언트 request response CGI 프로그램 출력 실행
6
CGI, JSP 그리고 ASP(3/6) CGI 구현 : 거의 모든 언어 사용 가능 독립실행형태 → 웹 서버와는 무관하게 동작
강력한 웹 어플리케이션 구축을 지원 클라이언트가 해당 프로그램을 요청할 때마다 서버 내에서 프로세스가 새로이 생성( → 대안 : ASP) 서버의 CPU 및 메모리 자원의 점유 ↑
7
CGI, JSP 그리고 ASP(4/6) JSP(JavaServer Pages)
HTML 문서 내에서의 자바 서블릿 프로그래밍을 지원해 주는 기술 동적인 웹 페이지 생성을 지원 플랫폼 독립적(→ 서버 스크립트 방식) 데이터베이스와의 연동성과 속도면에서 호평을 받고 있음 CGI나 ASP보다 배우기가 어렵다는 평을 받고 있으나, 자바의 활용 정도 급신장과 짝하여 적용 범위가 급격히 확대되고 있는 추세임
8
CGI, JSP 그리고 ASP(5/6) ASP 기본 개념은 CGI와 유사
차이점 : 클라이언트로의 요청이 발생할 때마다 프로세스를 생성시키는 대신 Thread 개념으로 이를 처리 서버에 가해지는 부하 ↓ 처리속도 ↑ 처리 과정 웹 브라우저 : ASP 파일(.asp의 형태) 요청 서버 : ASP를 호출. ASP : 요청 받은 파일을 순차적(Top-down 방식)으로 처리(→ 해당 파일에 포함되어 있는 스크립트 명령어들을 실행, 결과를 HTML 웹 페이지 형태로 생성) 순수한 HTML 코드만을 포함하는 결과를 브라우저로 전송
9
CGI, JSP 그리고 ASP(6/6) ASP 서버측 스크립트 다양한 스크립트의 사용을 지원 데이터베이스와의 연동이 용이
소스 코드 공개 방지(→ 최소한의 보안 유지) 다양한 스크립트의 사용을 지원 VBScript, JScript, PerlScript 등 프로그래머가 원하는 스크립트를 선택할 수 있는 폭이 넓다는 점을 의미 데이터베이스와의 연동이 용이 ADO(Active Data Object)를 이용 컴포넌트 사용 ASP만으로는 처리가 힘든 문제는 비주얼 베이직, 비주얼 C++, 델파이, 등을 사용하여 제작하는 컴포넌트로 해결 배우기가 쉬움
10
ActiveX 서버 컴포넌트(1/4) ActiveX MS의 객체지향 프로그래밍 기술 및 이를 위한 제반 도구를 지칭하는 명칭
주요 기술 : COM(Component Object Model), DCOM (Distributed Component Object Model, COM을 분산 환경으로 확장해 놓은 기술)
11
ActiveX 서버 컴포넌트(1/4) 과정 기존의 OOP 기법
소스 코드 재사용에 관한 문제, 개발 언어에 대한 의존성 문제, 버전 관리 등에 관한 많은 문제점을 내포 OLE(Object Linking and Embedding) - 문서 내에 또 다른 문서를 넣기 위한 방법으로 등장 DDE(Dynamic Data Exchange) : 객체간의 통신 범용성 미확보 : MS 워드 문서에 MS 엑셀 문서를 삽입하려는 시도에서 출발 COM 등장 범용성 있는 객체간 통신 기법 DDE를 대체하는 개념 ActiveX 용어 등장(1996) (인터넷 환경 + PC 관련 기술) 접목 → 적극적인 사용자와의 상호 작용을 지원하여 WWW를 보다 활동적으로 만들기 위함
12
ActiveX 서버 컴포넌트(2/4) ActiveX 기술 : 서버측 기술 + 클라이언트측 기술 ActiveX 컨트롤
단일 컴퓨터 또는 분산 네트워크 환경에서 다수의 응용프로그램에 의해 재사용될 수 있는 컴포넌트 또는 독립 프로그램을 지칭하는 의미 기존의 OLE 컨트롤을 인터넷 환경에 적합하도록 그 내용을 최적화 보다 빠르게 웹 페이지에서 동적인 객체들을 사용할 수 있도록 지원 Sun Microsystems의 Java 기술에 대응하기 위해 MS가 내놓은 기술
13
ActiveX 서버 컴포넌트(3/4) ActiveX 컨트롤 MS의 COM을 지원하는 언어를 사용하여 제작
실제적·구현적 측면에서의 이해 : “ActiveX 컨트롤이란 일종의 DLL 모듈” ActiveX 컨트롤이 .dll 형태로만 존재하는 것은 아니며, .ocx나 .exe의 형태로도 존재(OCX : Object Linking and Embedding Control) 이러한 모듈은 컨테이너라고 하는 인터페이스를 가지는 응용 프로그램내에서 실행 ※ COM이 OLE를 수용하고 있는 개념으로 확대되어 있으므로 MS의 컴포넌트 객체를 말할 때는 OCX 대신 ActiveX 컨트롤이라는 용어를 사용
14
ActiveX 서버 컴포넌트(4/4) ActiveX 서버 컨트롤 서버에 머물러 있으면서 동작하는 컴포넌트
클라이언트로부터의 처리 요청이 발생 → 해당 컨포넌트가 동작 ActiveX 컨트롤은 클라이언트로 다운로드 DLL 형태를 지원하므로 마치 스레드와 같이 실행 CGI : 사용자 요청시마다 프로세스를 생성하여 메모리에 매번 적재, CPU에 대한 부담을 가중 ASP : 서버측 ActiveX 컨트롤의 집합
15
ActiveX 서버 컴포넌트(4/4) Visual Basic,Visual C++, Delphi 등의 AcitveX 컨트롤 생성을 지원하는 도구 또는 언어를 사용하여 필요한 컨트롤(컴포넌트)을 제작하여 사용할 수 있음 ASP는 기본적으로 몇 가지 서버측 컨트롤을 제공 VBScript와 같은 스크립트에서는 사용자가 제작한, 또는 ASP가 기본으로 제공하는 컴포넌트를 호출하여 사용
Similar presentations