본문 바로가기

차이4

[OS] 프로세스 vs 스레드 프로그램 프로그램이란, 파일이 저장 장치에 저장되어 있지만 메모리에는 올라가 있지 않은 정적인 상태를 말한다. 프로세스 메모리에 적재되어 실행되고 있는 프로그램의 인스턴스(독립적인 개체) 프로그램 : 어떤 작업을 위해 실행할 수 있는 파일 운영체제로부터 자원을 할당받은 작업의 단위 특징 프로세스는 각각 독립된 메모리 영역(Code, Data, Stack, Heap의 구조)을 할당받는다. 기본적으로 프로세스당 최소 1개의 스레드(메인 스레드)를 가지고 있다. 각 프로세스는 별도의 주소 공간에서 실행되며, 한 프로세스는 다른 프로세스의 변수나 자료구조에 접근할 수 없다. 한 프로세스가 다른 프로세스의 자원에 접근하려면 프로세스 간의 통신(IPC, inter-process communication)을 사용해야.. 2021. 8. 18.
[Web] HTTP와 HTTPS 차이점 HTTP HTTP(Hyper Text Transfer Protocol)란 서버/클라이언트 모델을 따라 데이터를 주고 받기 위한 프로토콜이다. HTTP는 인터넷에서 하이퍼텍스트를 교환하기 위한 통신 규약으로, 80번 포트를 사용하고 있다. 따라서 HTTP 서버가 80번 포트에서 요청을 기다리고 있으며, 클라이언트는 80번 포트로 요청을 보내게 된다. HTTP는 1989년 팀 버너스 리(Tim Berners Lee)에 의해 처음 설계되었으며, WWW(World-Wide-Web) 기반에서 세계적인 정보를 공유하는데 큰 역할을 하였다. WWW(World Wide Web)에 내재된 프로토콜이다. 인터넷에서 자원(파일, 이미지, 비디오)을 교환하는 프로토콜(약속, 규칙) 기본 포트 80 하이퍼텍스트 문서를 표현하기.. 2021. 8. 18.
[Web] Web Server 와 WAS의 차이 Web Server 웹 브라우저 클라이언트로부터 HTTP 요청을 받아 정적인 컨텐츠(.html .jpeg .css 등)를 제공하는 컴퓨터 프로그램 HTTP 프로토콜을 기반으로 하여 클라이언트(웹 브라우저 또는 웹 크롤러)의 요청을 서비스 하는 기능을 담당한다. 정적인 콘텐츠 제공 : WAS를 거치지 않고 바로 자원 제공 동적인 컨텐츠 제공을 위한 요청 전달 : 클라이언트 요청을 WAS에 보내고, WAS가 처리한 결과를 클라이언트에게 전달(응답)한다. 클라이언트는 일반적으로 웹 브라우저 ex) Apache Server, Nginx, IIS(Windows 전용 Web 서버) 등 엔진엑스는 아파치의 단점을 보완하기 위해 만든 프로그램. 아파치는 C10K Problem이라고 해서 하나의 웹서버에 10,000개의.. 2021. 8. 4.
[Web] GET과 POST 차이 GET 서버로부터 정보를 조회하기 위해 설계된 메소드 요청을 전송할 때 필요한 데이터를 Body에 담지 않고, query string을 통해 전송한다. 불필요한 요청을 제한하기 위해 요청이 캐시될 수 있다. js, css, 이미지 같은 정적 컨텐츠는 데이터가 크고, 변경될 일이 적어 반복해서 동일한 요청을 보낼 필요가 없다. 정적 컨텐츠를 요청하고나면 브라우저에 요청을 캐시해두고 동일한 요청이 왔을 때 서버로 요청을 보내지 않고 캐시된 데이터를 사용한다. 데이터가 URL에 나타나므로 보안에 취약하다. POST 리소스를 생성/변경하기 위해 설계된 메소드 요청을 전송할 때 필요한 데이터를 Body에 담아서 전송한다. HTTP 메세지의 Body는 길이의 제한없이 데이터를 전송할 수 있다. 따라서 GET과 달리.. 2021. 8. 3.