학사 나부랭이

Network - Web 본문

自習/Network

Network - Web

태양왕 해킹 (14세) 2021. 7. 30. 04:12

 인터넷에서 거미줄처럼 연결되어 서로의 정보를 공유하는 컴퓨터 공간인데, 웹은 HTML으로 작성된 페이지를 웹 브라우저 엔진을 통해 해석하며 이용해요. 웹 페이지는 HTML, JS, CSS 언어를 통해 3가지 요소로 우리에게 표시되어요.

웹 브라우저 웹 서버 WAS DB
파이어폭스
오페라
엣지
NGINX
Apache
IIS
NodeJS
JSP
PHP
Django
MySQL
MariaDB
PostgreSQL
MongoDB
CouchDB
GraphQL

 

웹 브라우저

 웹 서버에서 응답받아 사용자에게 HTML 문서를 출력해주는 응용 프로그램이에요. HTML, JS, CSS 언어를 해석할 줄 알아야 하며, 이들을 어떻게 해석하느냐에 따라 같은 소스 코드의 페이지가 다르게 보일 수도 있어요. IE의 경우, 업데이트가 중단되어서 최신 문법을 해석하지 못하거나 개발자의 의도대로 해석하지 못할 수도 있어요.

 

HTML

 HTML은 제목, 내용, 버튼 등의 요소들을 웹 브라우저에서 어떻게 표시할지 나타내요. 하지만 HTML만으로 수학 연산이나 반복문 등의 작업으로 문서를 꾸밀 수 없어요. 예를 들어, 시험 점수를 입력받는 폼을 만들 수는 있지만, 이 점수들로 평균을 낼 수 없죠.

 

JS

 HTML만으로는 불가능한 연산이나, 동적인 작업 수행에 사용되어요. 웹 브라우저에서 해석되어 동적인 내용을 생성하죠. HTML은 할 수 없었던 계산이나 연산 작업 등을 수행해 웹 문서를 동적으로 동작하게 해 줘요.

 

CSS

 웹 문서를 꾸미는 역할을 해요. 문서 요소들의 글꼴, 배치, 크기, 색상 등을 수정할 수 있으며, HTML과 분리된 파일 형태로 작성될 수 있어요.

 

웹 서버

 웹 서버는 클라이언트의 요청을 받아 .html, .png, .css 등의 정적인 콘텐츠를 제공해요. 클라이언트의 요청이 들어오면 정적인 콘텐츠는 바로 응답하고 동적인 콘텐츠는 WAS로 요청을 전달해요.

 

Web Application Server

 동적인 요청을 포함해 콘텐츠를 제공해요. 동적인 연산 처리나 DB 조회 등을 담당하죠. 클라이언트의 요청을 가공하여 DB로 질의하는 역할을 해요. 웹 애플리케이션은 서버 측에서 다양한 언어로 작성될 수 있어요. Java로 개발된 JSP, JS로 개발된 NodeJS, Python으로 개발된 Django 등이 있어요.

 

DataBase

 회원 정보, 게시글 등의 데이터 이용에 관리되는 데이터의 모음이에요. 클라이언트에게 제공할 데이터가 복잡하지 않다면 사용하지 않을 수도 있어요. 데이터의 구조를 정형화한 Schema에 따라 테이블에 저장되는, 비교적 엄격한 관계형 데이터 베이스(RDBMS, Relational DB Management System)가 있는 반면, 전통적인 관계형 데이터베이스와 다른 형태인 NOSQL(Non SQL)도 있죠.

'自習 > Network' 카테고리의 다른 글

Network - HTTP  (0) 2021.07.30
Network - TCP/UDP  (0) 2021.07.13
Network - Ping sweep scaner  (0) 2021.07.12
Network - Internet Control Message Protocol  (0) 2021.07.01
Network - Internet Protocol  (0) 2021.07.01
Comments