티스토리 뷰
Goal
- 웹 프로그래밍과 웹과 관련된 용어에 대해 이해한다.
- Java웹에 대해 간단히 이해한다.
- 웹 프로그램의 동작 방식에 대해 이해한다
- 웹서버와 웹 어플리케이션을 이해하고 차이점을 알아본다.
1. 웹프로그래밍이란?
- 웹 프로그래밍이란, 웹 어플리케이션을 구현하는 행위
- 웹 어플리케이션은 웹을 기반으로 작동되는 프로그램
ex) 네이버등의 포털 사이트
- 웹이란, 1개 이상의 사이트가 연결되어 있는 인터넷 서비스의 한가지 형태
ex) 컴퓨터와 컴퓨터는 인터넷 서비스를 통해 네트워크를 이루고, 그 인터넷 서비스 중의 한가지가 웹(www)
- 인터넷: 1개 이상의 네트워크가 연결되어 있는 형태.
- 프로토콜(Protocol): 네트워크상에서 약속한 통신규약
ex) Http, FTP(File Transform Protocol), SMTP, POP, DHCP
- IP: 네트워크상에서 컴퓨터를 식별할 수 있는 주소 (000.000.000.000, 12자리의 숫자, 외우기 힘들다)
-DNS: IP주소를 인간이 쉽게 외우도록 맵핑한 문자열
-Port: IP주소가 컴퓨터를 식별할 수 있게 해준다면, Port번호는 해당컴퓨터의 구동되고 있는 프로그램을 구분할 수 있는 번호
Ex) Http://www.sba.seoul.kr:80/kr/index
- Http:// (프로토콜) : 입력하지 않아도 디폴트 값으로 설정
- www.sba.seoul.kr (DNS 서버): IP 주소를 사람이 이해하기 쉽게 매핑한 것.
- 80 (Port번호) : DNS(or ip)로 접속한 서버에서 구동되고 있는 프로그램을 구분할 수 있는 번호
- index (information path) : 정보를 담고있는 폴더
2. Java웹
2-1 J2EE
- 컨테이너
1) 웹 컨테이너
- JSP : Java Server Page : HTML파일 내에 JAVA언어를 삽입한 문서
- Servlet : JAVA언어로 이루어진 웹프로그램 문서
2) EJB 컨테이너
*컴포넌트: JSP, Servelt, HTML 등의 웹어플리케이션을 구현하기 위한 구성요소
*컨테이너: 컴포넌트를 관리하며, 담고 있다 (Tomcat7)
3. 웹프로그램의 동작
3-1 웹 서버(Web Server)
- 클라이언트가 서버에 페이지 요청을 하면 요청을 받아 정적 컨텐츠(.html, png, css등)를 제공하는 서버.
- 클라이언트에서 요청이 올 때 가장 앞에서 요청에 대한 처리를 한다.
- 클라이언트의 요청을 기다리고 요청에 대한 데이터를 만들어서 응답하는 역할
- 정적 컨텐츠가 아니면 웹어플리케이션에 처리 요청, 웹어플리케이션에게 요청한 컨텐츠를 받으면 마지막으로 클라이언트에게 응답해줌. ex) 아파치
3-2 웹 어플리케이션서버 (Web Application Server)
- 동적 컨텐츠를 제공하기 위해 만들어진 어플리케이션 서버 (DB조회, 로직처리가 요구되는 컨텐츠)
- JSP, Servelt 구동 환경 제공
- 컨테이너, 웹컨테이너, 서블릿 컨테이너라고도 부름 ex)톰켓
3-3 웹서버와 웹어플리케이션 서버의 차이
- 동적 컨텐츠 처리를 수행 할 수 있는지 아닌지.
- 톰캣 앞에 아파치를 두는이유, 하나의 서버에서 php어플리케이션과 java어플리케이션을 함께 사용하거나, httpd 서버를 간단한 로드밸런싱을 위해서 사용해야 할 때 필요하기 때문.
* 로드밸런싱 (부하분산) : 대량의 사용자 요청을 효율적으로 처리하여 사용자에게 응답하는 시간을 최대한 줄이기 위해 아파치에서는 정적인 컨텐츠를 처리하고, 동적인 컨텐츠는 웹 어플리케이션 서버에서 처리한다.
* 필요한 학습
-Java
-HTML: 웹 어플리케이션을 구현하기 위한 기본 언어
-JavaScript: 클라이언트 기능을 구현하기 위한 언어
-Jquery: JavaScript의 대표적인 라이브러리로써, 클라이언트 사이드 스크립트 언어를 단순화 할 수 있다.
-CSS: 웹어플리케이션의 레이아웃 및 스타일을 지정하는 언어
참고사이트
* https://limmmee.tistory.com
*https://jeong-pro.tistory.com/84
톰캣과 아파치?
'JSP > 인프런 JSP' 카테고리의 다른 글
6. Servlet 본격적으로 살펴보기 -4 (0) | 2020.02.05 |
---|---|
5. Servlet 본격적으로 살펴보기 -3 (0) | 2020.02.04 |
4. Servlet 본격적으로 살펴보기 -2 (0) | 2020.02.03 |
3. Servlet 본격적으로 살펴보기 -1 (0) | 2020.02.03 |
2. JSP, Servelt 간단히 알아보기 (JAVA) (0) | 2020.02.02 |
- 20200413
- 20200317
- 20200510
- 20200417
- 20200622
- 20200502
- 20200624
- 20200421
- 백준
- likelion
- 생활코딩리눅스
- 20200427
- 20200423
- 20201204
- 20200424
- 20200420
- 20200406
- 20200503
- 20200403
- 20200804
- 20200504
- 20200512
- chapter7
- 20200425
- 20200319
- 20200429
- chapter8
- 20200415
- 20200330
- 20200428
- Total
- Today
- Yesterday