웹이란 무엇일까요?
우리가 흔히 쓰고, 지금도 웹을 통해 이 글을 읽고 계시지만,
막상 웹의 개념에 대해서 말하려 하면 말하는 것이 쉽지 않으실 겁니다.
지금부터 그런 웹에 대해서 알아보겠습니다.
1. 웹이란?
World wide web의 줄임말로 온라인상에서 다양한 정보(웹 페이지)가 서로 연결되어 있는 것을 웹이라 합니다. 웹 페이지는 글, 그림, 동영상 등 수많은 정보를 담고 있고 링크로 각각의 웹페이지들이 연결되어 있습니다.
* 웹과 인터넷이 혼용되어 쓰이기도 하는데,
- 인터넷: 컴퓨터가 서로 연결되어 통신을 주고받는 컴퓨터끼리의 네트워크
- 웹: 인터넷상에서 정보가 서로 얽혀있는 무형의 정보 네트워크
=> 웹은 인터넷으로 할 수 있는 여러 서비스 중 하나입니다.
2. 웹 서비스
자주 사용하는 웹 서비스를 하나 떠올려 보세요.
아니, 방금 전가지 사용했던 웹 서비스를 생각해보세요.
아마 여러분은 네이버, 구글이라는 웹 서비스에 들어와서
검색란에 원하는 정보를 쳐서 요청하였을 거예요.
그리고 그 요청에 맞게 웹 서버가 응답을 해주어 지금 화면을 보고 있는 것이겠죠?
이때 필요한 것을 요청하는 사람을 '클라이언트',
요청에 맞게 서비스를 제공해주는 사람을 '서버'라고 합니다.
우리가 가게에서 주문(요청)을 하면 음식이 나오는 것(응답)과 유사한 개념이라고 생각하시면 됩니다.
- 클라이언트 컴퓨터: 웹 브라우저(크롬 등)와 같은 웹에 접근할 수 있는 소프트웨어와 인터넷이 연결된 장치(ex-데스크톱은 wifi에 연결)를 말합니다. 클라이언트가 요청을 할 때 get, post라는 방식들이 있지만 우선 이점은 그냥 그런가 보다~ 하고 넘어가 주세요:).
- 서버 컴퓨터: 웹페이지 등을 저장하는 컴퓨터입니다. 클라이언트 장비가 웹페이지에 접근하기를 원할 때, 서버로 부터 클라이언트의 장치로 사용자의 웹브라우저에서 보여지기 위한 웹페이지 사본이 다운로드됩니다.
- 웹 서버란? HTTP(http://)라는 네트워크를 통해 사용자의 요청을 받고, 웹 브라우저에서
요청하는 글 그림 등의 HTML 문서나 오브젝트를 전송해주는 서비스 프로그램을 말합니다.
- 웹 브라우저: 웹서버에서 이동하며 쌍방향으로 통신하고 HTML문서나 파일을 출력하는 응용 SW입니다.
따라서 웹 서비스를 만든다는 것은 서버로 작동할 수 있는 프로그램을 만든다는 것입니다.
3. 웹 서버를 만드는 방법
서버 컴퓨터,,,
뭔가 무시무시하게 생겼죠?
우리는 이에 대해 깊이 있게 다룰 필요는 없습니다.
아래의 내용은 그저 '아, 그렇구나~ '로 넘어가신 후,
디테일한 부분은 따로 정리를 해둘 테니 그를 참고하시면 좋을 것 같습니다.
우선 우리가 요청하는 것들에 서버가 잘 응답하기 위해서 필요한 능력은 무엇일까요?
1. 서버 컴퓨터에 필요한 능력
(1) 만약 여러분이 웹에 접속하는데 5초 이상이 걸리면 어떤 생각을 할까요?
컴퓨터에 문제가 있거나, 웹에 문제가 있겠다고 생각하겠죠?
아니 5초가 뭔가요, 1초 이상만 돼도 느리다고 느낄 텐데...(한국 기준)
그러니 서버 컴퓨터는 빠른 컴퓨팅 능력(빠르게 요청을 받아들이는 능력)이 필요합니다.
(2) 우리가 웹에 들어갈 때 12시 이후부터는 자야 하니 들어가면 안 되겠자~ 이러지는 않죠?
24시간, 언제든지 요청을 받아들일 수 있어야 합니다.
(3) 그런데 이렇게 항상 켜있으면 발열이 상당할 테니, 이에 대한 냉각장치도 필요하겠죠?
(4) 우리가 가게를 만들 때, 손님 수를 생각하며 크기를 정하죠?
서버도 마찬가지로, 요청하는 클라이언트 수를 고려하여야 합니다.
(5) 웹서비스에 대한 정보들을 가지고 있으려면 보안 능력은 필수겠죠?
자, 이제 우리는 서버가 무엇인지, 서버에는 어떤 것이 필요한지 알게 되었습니다.
그렇다면 이 서버를 우리가 어떻게 만들 수 있을까요?
2. 서버가 되기 위한 두 가지 방법
1) 내 컴퓨터를 서버 컴퓨터화시킬 수 있습니다.
- 웹서버를 온라인 상으로 대여해주는 sw: 아파치, Microsoft IIS
- 설치 과정이 다소 까다롭고,
- 추가적인 지식을 요구하지만
- 한번 익히면 자유로운 개발이 가능합니다.
2) 서버용 프로그램이 설치된 다른 컴퓨터를 이용, 웹호스팅 업체를 이용할 수도 있어요.
- 웹호스팅 업체: AWS C9, Github
- 서버 장비를 공동으로 사용하며, 월 이용료를 납부합니다.
- 설치와 조작이 단순하지만
- 과금이 발생하며
- 개발에 있어 제약이 있고
- 클라이언트 수를 고려하지 않아도 됩니다.
: 웹 호스팅 업체에게 그때그때 필요한 만큼의 서버를 이용할 수 있습니다.
*저희는 Github을 이용하여 웹서버를 구축할 것입니다:).
'개발 > Web(html_css)' 카테고리의 다른 글
프론트엔드? 백엔드? 차이 (0) | 2020.04.22 |
---|---|
CSS선택자 및 이용하는 방법 -style 속성, 태그, 파일 분리하기 (0) | 2020.04.19 |
HTML 기본 태그 정리 (0) | 2020.04.17 |
웹 기초) HTML개념과 태그, 요소, 속성, 변수 (0) | 2020.04.11 |
웹 기초) HTML,CSS,Javascripts개념과 차이 (0) | 2020.04.11 |
댓글