JSP1강 - 웹 프로그램 개요

본 게시글은 인프런의 강의를 듣고 기억하려고 작성했습니다. 깔끔하게 정리보다는 개인 필기노트 같은 느낌입니다.

1-1. 웹프로그램 개요

서버, 스마트폰, 태블릿과 같은 컴퓨터들이 있다.
이 단말끼리 연결되었을 때 네트워크가 형성되었다고 한다.
네트워크에서 주어질 수 있는 많은 서비스들이 있는데 그 중에 인터넷 서비스가 있다.
서로 연결된 상태에서 브라우저를 통해 데이터, 정보 따위를 주고 받는다. 이런 것을 인터넷 서비스를 이용하고 있다고 한다.

REQUEST : 어떤 피씨, 특히 브라우저에서 다른 컴퓨터로 정보를 요청하는 행위를 의미한다.
RESPONSE : 그러면 서버는 요청받은 정보를 처리하여 그에 대한 응답을 요청이 온 곳에 보내준다. 이를 RESPONSE라고 한다.

즉, 웹 프로그램이란 인터넷 서비스를 이용해서 서로 다른 구성요소들(PC 등) 이 통신할 수 있는 프로그램이다.

1-2. 프로토콜과 IP

위에서 언급했듯이 인터넷 객체는 웹서버로 어떠한 요청을 할 수 있고, 이에 따라 서버는 다시 객체로 응답을 한다.
이때 서로 통신을 한다고 하는데, 서로간에 규약을 정해놓고 통신을 하게 된다.
통신을 하기 위한 규약을 프로토콜이라고 한다.
HTTP, FTP, SMTP, POP 등이 있다.

HTTP: 브라우저에서 웹사이트를 들어가게 되면, 그 웹사이트의 그림, 글, 동영상 등으로 응답을 함. 우리가 어떠한 요청을 했을 때 하이퍼링크를 이용해서 어떠한 텍스트, 동영상, 이미지로 응답을 하는 것.
FTP: 요청을 했을 때 응답으로 파일 자체가 전송이 됨. 파일을 서버로 보낼 수도 있고, 내려 받기도 됨.
SMTP, POP: 메일과 관련됨.

전세계에 수많은 PC가 있다. 우리는 요청을 할 특정 PC를 지칭해야 한다. 이때 어떠한 컴퓨터의 특정한 주소를 IP address라고 한다.
IP는 숫자로 표현 되는데 이는 너무 복잡하고 활용도가 낮다.

그래서 우리는 중간에 DNS 서버를 둔다.
DNS 서버: 유저가 영어로된 이름을 입력하면, 해당하는 IP 주소로 매핑해준다.
포트: 웹서버에는 구동되고 있는 프로그램이 여러개 있을 수 있다. 내가 원하는 프로그램을 찾아가기 위해 사용하는 경로를 포트라고 한다.

http://www.google.com:80/index.html

http: 프로토콜
www: 인터넷 서비스 구분
google.com: 도메인
80: 포트
index.html: 경로

1-3. 웹 프로그램의 동작 원리


유저가 브라우저를 통해 어떠한 검색을 한다고 했을때, 해당 서버로 해당 요청을 request 한다.
그러면 서버는 받은 request에 따라 어떤 정보를 가져올 것인지지 판단을 한다. 그 과정에서 데이터 베이스 접근이 필요하면 db로 query를 한다.
쿼리 result를 받으면 해당 정보를 다시 브라우저로 response해 응답한다.
웹서버와 유저가 통신할때는, HTML 웹브라우저를 구성하는 문서를 왔다갔다 하게 된다.
사용자가 요청을 했을 때 특별히 가공할 필요 없으면 준비된 정적 데이터로 보여준다.
하지만 따로 수정하고 가공하고 변화를 줘야 하면, web container로 보낸다. 가공하고 변형하기도 해서 새로운 데이터를 뽑아낸다. 이를 동적데이터라 한다.

아는 내용이지만 다시 한번 듣는것도 나쁘지 않았다. 워밍업!

좋은 웹페이지 즐겨찾기