Term Project Hints Topics Keep-alive CGI Multi-thread Multi-process Event-based.

Slides:



Advertisements
Similar presentations
- C-style formatting - format() method.  file = open(‘file.txt’, [mode]) ◦ Mode  ‘r’: for reading (default)  ‘w’: for writing (truncate if already.
Advertisements

데이터 베이스 (MYSQL) 장수용. MYSQL 이란 ? -MySQL 은 DBMS( 데이터베이스 관리 시스템 ) 이다. - MySQL 은 RDBMS( 관계형 데이터베이스 ) 이다. - MySQL 은 오픈소스이다. - MySQL 은 빠르고, 안정적이고.
Web Programming 소개 인공지능 연구실. Artificial Intelligence Laboratory 목차  1. HTML5  2. 개발 환경 구축  3. JSP  4. 실습 2.
인공지능 연구실. 1. OpenAPI 2. Mashup 3. How can use OpenAPI 4. Various OpenAPIs 5. 실습 2.
YES C 제 1 장 C 언어의 개요 1/34 제 1 장 C 언어의 개요 문봉근. YES C 제 1 장 C 언어의 개요 2/34 제 1 장 C 언어의 개요 1.1 프로그램과 C 언어의 특징 1.2 C 언어의 프로그램 구성 1.3 비주얼 C++ 통합 환경 들어가기.
9 주차 실습강의 학기, 소프트웨어 설계 및 실험 ( Ⅰ ). Artificial Intelligence Laboratory Open API  API(Application Programming Interface)  응용 프로그램에서 사용할 수 있도록.
Chapter 02. 웹에 대한 이해. Chapter 02. 웹에 대한 이해 웹의 역사 HTTP 웹 애플리케이션 기술.
화일구조.
28강 JAVA 입출력(I/O) 알아보기 - 입출력(I/O) 이란? - JAVA 입출력 API(Input~, Output~)
Project #2-2. Pintos User Program
Introduction to Django
HTML과 CGI 프로그래밍 PHP 웹 프로그래밍 (PHP Web Programming) 문양세
웹 해킹 기초와 실습.
프로젝트2 Web Programming 강의노트: vrlab.suwon.ac.kr/mwlee
Python Bottle Web Framework
Web Programming 강의 소개
컴퓨터 소프트웨어.
Department of Computer Engineering
2 서블릿의 기초.
1. JSP(Java Server Pages) 소개
5 익셉션 처리.
Chapter 04. 웹 보안 : 웹, 그 무한한 가능성과 함께 성장한 해킹
Web Server와 DB 연동.
1장. JSP 및 Servlet을 활용한 동적 웹 프로그래밍 소개 제1장.
1. JSP(Java Server Pages) 소개
웹과 PHP를 이해하고 APM 설치 방법을 알아보자!
김승겸 한남대학교 컴퓨터공학과 인공지능 실험실
125. WAPPLES Policy Setting Guideline
1강 01장. 웹과 자바.
ASP 정 보 보 호 학 과 양 계 탁.
제3장 이클립스 사용하기.
인터넷 보안 정보 보안 개론 5장.
Department of Computer Engineering
Embeded 기초 다지기 2015년 10월 26일 intern Sally
파일 및 디렉토리(1) 여러 함수들 chdir(“category”) || die “cannot cd to temp”;
웹서버와 설치에 필요한 것 WWW ( world wide web ) TCP/IP 프로토콜을 이용하는 클라이언트/서버 환경
JSP 내장 객체 JSP에서 기본으로 사용할 수 있는 내장 객체 종류를 알아본다. 내장 객체별 주요 기능과 메서드를 이해한다.
Web Server Program 구현 - 네트워크 프로그래밍 - 박내갑 ( ) 김상언 ( )
04장 웹 보안: 웹, 그 무한한 가능성과 함께 성장한 해킹
Department of Computer Engineering
Html(front end) & jsp(back end)
BIZSIREN 실명확인서비스 개발 가이드 서울신용평가정보㈜ 신용조회부 (TEL , FAX )
Open API - Naver (Application Programming Interface )
5장 이름, 바인딩, 영역(2) 순천향대학교 컴퓨터공학과 하상호.
충북대학교 데이터베이스 & 정보시스템 연구실 정 태 성
Web Basic 김영성 인천대 OneScore
Web Vulnerabilities 정보 보호 2008/05/31 Getroot.
CGI (Common Gateway Interface)
상품등록 방식 비교 년 4월 23일 (주)에이치케이넷츠.
KTF 무선인터넷 표준 UI 2000년 4월 SK 텔레콤 귀중 CP 제공용
CGI (Common Gateway Interface)
Python.
Cyber Shopping Mall 구축 - CD New - 안소연,박지윤,박종봉,정영은.
2장. 홈페이지를 만들기 전에 홈페이지 제작 목적과 제작 과정 홈페이지 제작 관련 기술들 홈페이지 제작에 필요한 준비물
CGI란 무엇인가? CGI(Common Gateway Interface)의 정의
웹 2.0 개발자입니까? 2008 고급 XML 프로그래밍.
CH2. ASP.NET 페이지 분석 HTML ASP ASP.NET 의 차이점.
GoAhead Web Server.
Operating System Multiple Access Chatting Program using Multithread
나는 땅에서 키는 작지만 하늘로부터 재는 키는 이 세상 어느 누구보다도 크다
화일구조.
이번 시간에는... 지난 시간까지 제 1장을 통해 모바일의 정의와 개념, 시작과 발전, 기술과 서비스 및 그 전략을 살펴봄으로써 모바일 산업에 대한 전반적인 이해를 쌓았습니다. 이번시간 부터는 제 2장 모바일 기술을 통해, 무선 인터넷을 위한 컨텐츠 제작 기술, 네트워크.
Stream의 이해 : System Bufferring
Introduction to JSP & Servlet
제 17 장 MVC 모델과 구현 학기 인터넷비즈니스과 강 환수 교수.
XSS 정 여 진.
주요공지로 정할 글을 올립니다. 제목과 주소를 복사해둡니다
이번 시간에는... 지난 시간까지 2회차에 걸쳐 WML의 택스트 포맷, 이미지 처리, 페이지 이동, 태스크 수행과 이벤트 처리 및 WML 사용자 Input 처리 태그 등, WML 개발에 대해서 알아보았습니다. 이번 시간에는 2회차에 걸쳐, WML 스크립트 개발에 대해서.
웹 스크래핑.
웹 프로그래밍 기술 요약 Yang-Sae Moon Department of Computer Science
Presentation transcript:

Term Project Hints Topics Keep-alive CGI Multi-thread Multi-process Event-based

– 2 – CGI CGI (common gateway interface) 프로그램 Web content 는 static 과 dynamic 으로 나뉨 Dynamic content 는 CGI 프로그램 / 스크립트에 의하여 지원 보통 입력에 따라 다른 결과를 출력함 출력은 stdout 으로 하게됨 PHP, PERL, JSP, ASP, Javascript, python 등 script 언어가 주로 사용 GET 방식 브라우져는 입력방식 으로 url query string 을 사용 예 ) 환경 반수 (QUERY_STRING) 을 통하여 전달 POST 방식 : 브라우저는 입력방식으로 stdin 을 사용

– 3 – Tiny 서버의 문제점 문제점 CGI 프로그램 자체에서 HTTP Response 헤더를 생성 Query String 이 일반적이지 못함 adder?1&2 vs adder?value=1&value2=2 Body 길이를 계산할 수 없음 (keep-alive 에 필수적 ) POST 지원 안됨문제해결 HTTP Response 헤더는 Tiny 서버에서 생성하도록 위치조정 Query string 입력 방식 수정 Body 계산을 위하여 직접 socket 에 출력하지 않고, pipe 를 통하여 데이터를 받은 후 buffer 에 저장하여 길이 확인 후 socket 으로 전달 POST 지원을 위한 pipe 기능 제공

– 4 – HTML form 일반적으로 CGI 기능은 HTML-Form 을 사용하여 제공됨 예<html><body><center> Adder CGI TEST value1: value1: value2: value2: </form></center></body></html>

– 5 – Linux pipe PIPE ( 빨대, 관 ) File 과 유사 Byte 단위 입출력 file descriptor 를 사용 File API 를 그대로 사용 : read, write etc ( 간단히 메모리상에 존재하는 파일로 생각하여도 됨 ) uni-directional (read or write 만 가능 ) One pipe end for write / the other pipe end for read programmer decides which process to read and which to write

– 6 – pipe API Create Pipe : int pipe(int fds[2]); #include 한쌍의 file-descriptor 세팅 : fd[0] = 입력용, fd[1] = 출력용 pipe fd 는 uni-directional. array element 0 ==> for input (like stdin, 0) array element 1 ==> for output (like stdout, 1) return : < 0 (error) 1 (success)Read-write Use the same read( )/write() call as others read() return 0 when no more writers (opened fd) = end of file write on close pipe generates “SIFPIPE” and return errno = EPIPE

– 7 – How to use in CGI Gateway (Tiny) CGI program (adder) to_cgi_fd[0] to_cgi_fd[1] from_cgi_fd[0] HTTP RESP BODY HTTP POST BODY