2021. 02. 01. 월요일 HTTP Client client와 server의 차이에 대해서 알아봤다. 진짜 처음 안 것은 웹 클라이언트(= 웹 브라우저)에 크롬, 사파리, ... 이런 게 있는 것처럼 웹 서버도 실제 프로그램이 존재한다는 것이었다. Apache, IIS, Nginx 등. 정말 놀라웠다.. 말로만 듣던 서버가 실제로 프로그램이었다니. host란 인터넷이 연결되어있는 컴퓨터 한 대 한 대를 말한다. 서버로 쓸 컴퓨터를 빌려주는 서비스를 웹 호스팅이라고 한다. 참고 : 맥에는 기본적으로 웹 서버가 깔려 있는데, 8080은 그것과 구분되는 새로운 포트이다. 웹 브라우저로 웹 서버에 접속하려면, 웹 서버가 설치되어 있는 컴퓨터의
프로그램 코드 그 자체. 컴퓨터에 설치하기 위해 내려받는 .exe, .dmg 형태의 파일. 프로세스 프로그램이 설치되어 실행되고 있는 상태. 메모리에 올라간 상태. 예를 들어 zoom, slack, chrome, 카카오톡을 모두 실행 중이면 여러 개의 프로세스가 실행 중(멀티태스킹)이라고 말할 수 있다. 각각의 프로그램이 하나의 프로세스로 이루어져 있느냐? 그건 구현하기 나름이다. 크롬의 경우 각각의 탭이 독립된 프로세스이다. 여러 개의 프로세스가 동시에 실행되는 것처럼 보이지만 사실 그렇지 않다. 운영체제의 스케줄링 방식에 대해서 더 공부해야 하는데, 간단히 설명하자면 A프로세스 조금, B프로세스 조금, C프로세스 조금, 다시 A 조금 ... 이렇게 실행시켜서 마치 동시에 실행되는 것처럼 보이게 한 것이다. 스레드 스레드는 프로세스의 흐름.. 스레드끼리는 메모리를 공유한다.