비동기와 멀티스레드는 같은 뜻이 아닙니다.

해당 의미를 정확하게 이해해야 업무에 큰 도움이 됩니다. (제가 그랬어요..)

 

의미를 간단하게 정리하자면 아래와 같습니다.

동기=  순서 

스레드= 공간 or 일꾼

 

그럼 이제, 하나씩 살펴보겠습니다.

 

동기: 순차적으로 실행되는 것

비동기: 요청은 받은 뒤 먼저 작업이 끝난 순으로 실행되는 것

 

 

단일스레드: 프로세스가 단일로 동작하는 것

    대표적인예로 자바스크립트가 단일스레드 언어입니다.

멀티스레드: 프로세스가 다중으로 동작하는 것

 

경우의 수가 아래와 같이 총 4개가 있습니다.

  1. 단일 스레드 — 동기
  2. 멀티 스레드 — 동기
  3. 단일 스레드 — 비동기
  4. 멀티 스레드 — 비동기

 

이해하기 쉽게 식당으로 예시를 들어보겠습니다.

 

1. 단일 스레드 — 동기

  본점에서 음식을 주문 -> 조리 완료 -> 다음 주문받음

 

2. 멀티 스레드 — 동기

   본점,1호점,2호점 중 한곳에서 음식을 주문 -> 조리 완료 -> 다음 주문받음

 

3. 단일 스레드 — 비동기

   본점에서 음식을 주문 -> 조리 및 주문받기 -> 조리가 빠른 순서대로 제공

 

4. 멀티 스레드 — 비동기

    본점,1호점,2호점 중 한 곳에서 음식을 주문 -> 조리 및 주문받기 ->  조리가 빠른 순서대로 제공

 

요즘 웹사이트는 비동기로 만들어지는 추세입니다.

 

지금까지의 설명을 들어보면 멀티 스레드 — 비동기 가 제일 좋아 보이지만,

코드가 복잡해지고 공수도 많이 발생하게 됩니다.

 

고객의 니즈를 정확하게 파악하여 상황에 맞게 선택하시길 바랍니다.

'웹 (web)' 카테고리의 다른 글

스마트에디터 Access denied 오류 해결  (0) 2023.05.25
NodeJs, mysql과 연동시 에러  (0) 2023.02.22
서버 패치 스크립트로 쉽게 관리하기  (0) 2023.01.25
PM2 로그 설정 쉽게 하기  (0) 2023.01.25
그누보드 소개  (0) 2017.08.26

+ Recent posts