HTML,CSS,JS -> 웹을 구성하는 근간
HTML; 구조/내용
CSS; 모양/스타일
JS; 이벤트/반응/사용자인터랙션
코드를 따라치는 학습 X
원리를 이해하는 학습 O
PC통신 폐쇄,저속,전화선/모뎀
Web 개방,고속,광랜(FTTH)
Web1.0
어느 누구나 프로그램을 대중에게 공개할 수 있는 세상(이전에는 cd를 통해 판매,공유)
Web2.0
일방향적으로 정보를 제공받던 사용자
직접 정보를 생산하고 공유하다
블로그,위키피디아
스마트폰의 등장 --> 정보화시대 가속화
SNS와 영상통화(ZOOM) 가능한 시대
Web3.0
데이터의 투명한 공개-블록체인
블록체인은 완벽한 기술인가?
느린 네트워크 처리 속도
오픈소스 형태로 책임자 불분명
그럼에도 많은 기업들이 사용하려고 노력한다
클라이언트란, 예를 들어 크롬브라우저에서 구글에 정보를 '요청'하는 주체를 클라이언트 라고 한다. 즉 브라우저를 통해 요청을 보내는 주체이다.
이어서 클라이언트의 요청을 수신하여 처리한 후에 요청에 대한 응답을 하는 주체를 서버라고 한다
웹 브라우저에서 URL이라는 주소양식을 통해서 클라이언트와 서버가 통신하는 규칙(요청,응답)을
HTTP라고 한다. (Hyper Text Transfer Protocol)
클라이언트에서 요청을 하거나 서버에서 응답을 할때는 매번 '목적지 주소'가 필요하다
URL(Uniform Resource Locator)
https://www.google.com/search?q=techit 이 주소에서,
https:// 는
프로토콜
-통신규칙
HTTP(HTTPS),FTP 등
www.google.com 는,
호스트(HOST)
-서버의 주소
-google.com 을 호스트 네임이라고 지칭
/search 는,
경로(path)
-호스트 내 서비스의 위치
-서비스 별로 분할 ex)검색창, 회원페이지 등
?q=techit 는,
쿼리 문자열(Query String)
쿠키란 서버에서 클라이언트로 보내져서 브라우저에 저장되는 아주 작은 크기의 데이터를 의미한다.
키와 값을 가지는 구조로 되어있고, 유효기간이 지나면 삭제가 된다.
클라이언트와 서버는 요청과 응답이 이루어 졌던것을 기억하지 못하는 특징을 가진다.
==> stateless
이러한 특성은 수만가지의 데이터를 저장해야 하는 필요성을 줄여서
리소스 관리측면에서 매우 효율적인 모습을 보인다.
하지만 stateless가 유지된다면, 로그인을 성공하였는데 매번 페이지를 옮길때 마다 로그인을 다시 해야하는 문제가 발생할 것이다. 이를 해결하기 위해 쿠키라는 개념이 등장한다. 로그인에 성공하여 장바구니에 물건을 담고 회원정보를 수정하는 등의 정보를 쿠키로 저장하여 페이지에 옮길때마다 다시 로그인하거나 다시 페이지에 방문하였을 때 장바구니 정보가 사라지는 등의 문제를 해결할 수 있다.
세션
세션은 쿠키에서 발생하는 문제점을 해결하기 위해 나온 것이라고 볼 수 있다.
만약 클라이언트에서 로그인에 성공하면 서버는 세션ID를 쿠키에 담아 클라이언트에 전송한다.
클라이언트의 브라우저에 굳이 모든 쿠키를 저장할 필요 없이 서버의 세션저장소에 쿠키를 저장하여 민감한 정보나 보안 정보를 클라이언트에 저장하지 않아도 된다.
네트워크는 두 대 이상의 컴퓨터가 연결된 통신망을 뜻한다.
어떻게 데이터가 오가는지 이해하는 것이 네트워크의 핵심이라고 할 수 있다.
네트워크의 연결된 각 컴퓨터를 호스트라고 부른다
동일한 네트워크에서 호스트 간의 통신을 가능하게 해주는 것을 스위치라고 한다.
스위치는 다른네트워크와의 통신이 불가능하다.
라우터는 스위치의 기능을 가지면서 다른네트워크와의 통신이 가능하다
우리가 사용하는 공유기가 라우터이다.
네트워크와 네트워크가 서로 연결된 거대 통신망
이 거대네트워크를 인터넷이라고 부른다.
IP, Internet Protocol
컴퓨터 간 데이터를 주고받는 네트워크 계층의 규약
데이터 전달에 필요한 목적지 컴퓨터 정보가 필요
IP주소란, 네트워크에서 컴퓨터가 부여받는 고유한 주소를 말한다.
ISP(Internet Service Provider)
공인IP(public IP)
-전체 인터넷 망에서 고유하게 식별 가능한 주소
-IPv4체계에서 자원 부족
하나의 공인IP에서 수많은 사설IP할당이 가능
사설IP(Private IP)
-가정의 LAN과 같은 네트워크에서 할당되는 주소
-컴퓨터에서 조회되는 IP
127.0.0.1 ==>local host
내 컴퓨터에서 나 자신을 가리키기 위한 별명
포트란, 하나의 컴퓨터에서 실행하는 다양한 서비스나 어플리케이션을 구분하는 역할을 한다.
개발을 진행할때 다른서버와 통신할 일이 생기는데 그 때, 접근하려는 서비스의 목적지 IP와 목적지 포트를 정확하게 설정해야 한다.
DNS, (Domain Name Server)
URL을 해석하여, IP주소로 반환하는 서버
DNS 서버는 국가, 기업등이 운영한다.
전세계 DNS는 연결되어 있다.
장애 발생 시 막대한 피해로 이어진다.