관리 메뉴

나의 개발일지(김지헌)

항해 99 97일차 12/24일 본문

항해 99

항해 99 97일차 12/24일

코딩이좋아요 2022. 12. 24. 20:16

오늘은 기술 면접을 봤는데 스레드에 대해 질문하셨는데 공부가 부족해서 대답하지 못했다. 그래서 공부를 해야 할 거 같아서 정리하는 겸 써봐야 할 거 같다

 

프로세스(process)란?

프로세스(process)란 단순히 실행 중인 프로그램(program)이라고 할 수 있습니다.

즉, 사용자가 작성한 프로그램이 운영체제에 의해 메모리 공간을 할당받아 실행 중인 것을 말합니다.

이러한 프로세스는 프로그램에 사용되는 데이터와 메모리 등의 자원 그리고 스레드로 구성됩니다.

이것보다 더 작은 실행 단위는 스레드이다. 프로세스마다 최소 스레드 1개는 만들어진다.

 

스레드(thread)란?

스레드(thread)란 프로세스(process) 내에서 실제로 작업을 수행하는 주체를 의미합니다.

모든 프로세스에는 한 개 이상의 스레드가 존재하여 작업을 수행합니다.

또한, 두 개 이상의 스레드를 가지는 프로세스를 멀티스레드 프로세스(multi-threaded process)라고 합니다.

프로세스보다 더 작은 실행 단위 개념이 만들어지게 되는데 이것이 스레드이다.

 

리소스 : 자원??(사용될 수 있는 어떤 항목)

 

REST란 “Representational State Transfer” 의 약자로서
웹상에서 사용되는 리소스를 HTTP URI로 표현하고 그 리소스에 대한 행위를 HTTP Method로 정의하는 방식입니다.

각 요청이 어떤 동작이나 정보를 위한 것인지를 그 요청의 모습 자체로 추론이 가능하다.

 

HTTP URI(Uniform Resource Identifier)를 통해 자원(Resource)을 명시하고
HTTP Method(POST, GET, PUT, DELETE)를 통해
해당 자원에 대한 CRUD Operation을 적용하는 것을 의미합니다.

 

RESTful API

REST 방식을 사용해서 CRUD Operation을 수행하는 API입니다.

HTTP와 URI 기반으로 자원에 접근할 수 있도록 제공하는 애플리케이션 개발 인터페이스이다.

기본적으로 개발자는 HTTP 메소드와 URI 만으로 인터넷에 자료를 CRUD 할 수 있다.

1.자원을 식별할 수 있어야 한다.

URL의 정보 만으로도 어떤 자원을 제어하려고 하는지 알아야한다.

2.행위는 명시적이어야 한다.

GET을 이용해서 UPDATE와 DELETE를 해도 되지만 좀 더 명확하게 보이는게 좋기 때문에

GET 요청으로 정보를 받기

POST 요청으로 정보 작성

UPDATE 요청으로 정보 수정

DELETE 요청으로 정보 삭제 하는 것이 REST하다고 할 수 있다.

3.자기 서술적이어야 한다.

데이터에 대한 메타정보만 가지고도 어떤 종류의 데이터인지, 데이터를 위해서 어떤 어플리케이션을 실행 해야 하는지를 알 수 있어야 한다.

 

 

 

 

'항해 99' 카테고리의 다른 글

항해 99 96일차 12/23일  (0) 2022.12.24
항해 99 95일차 12/22일  (0) 2022.12.23
항해 99 94일차 12/21일  (0) 2022.12.22
항해 99 93일차 12/20일  (0) 2022.12.21
항해 99 92일차 12/19일  (2) 2022.12.20