본문 바로가기

비동기2

Node.js === single-thread || multiple-thread?? 과연 Node.js 이 아이는 어떤 스레드일까? 1. 컴퓨터를 켜서 프로그램을 실행하게 되면 프로세스가 작동 2. 이 프로세스가 작동하게 되면 그 안에 있는 최소 한개의 스레드가 움직임 3. node도 기본적으로 보자면 여러개의 스레드를 가지고 있음 4. 그러나 node안에서 실행하는 언어인 javascript를 실행하는 스레드가 하나이기에 싱글 스레드라고 봄 5. 물론 기본 작업 외에 특정 작업을 할때, 추가 스레드가 필요하면 새로 스레드를 만들어서 쓸 수 있기에 멀티 스레드도 가능성이 있다고 봄 6. 노드는 이벤트 기반 플랫폼이고 이벤트가 발생하면 미리 지정해둔 작업을 수행하는 방식 7. 그럼 지정해둔 작업을 수행하는 것이기 때문에 콜백 처리하는것과 같음 8. 현재 Node.js는 v8이라는 Java.. 2022. 12. 19.
동기, 비동기와 블록,논블록 1. 동기 (Synchronous) -> 동시 일어난다 라는 뜻 -> 근데 그림은 동시에 안일어나는거 아냐? 라고 하실수 있지만, 여기서 동시는 현재 요청한 데이터의 결과와 미래에 요청할 데이터의 시작이 맞물리는 지점이 동시에 일어나서 그렇습니다. -> 이전 데이터가 다 처리가 될때까지 기다려하기 때문에 시간이 오래걸릴 수 있습니다. -> 설계는 매우 간단합니다. -> ex ) 계좌 이체를 한 은행에서 다른 은행으로 할때 2. 비동기(Asynchronous) -> 동시에 일어나지 않는다 라는 뜻 -> 그림과 같이 Synchronous와 반대로 딱딱 요청, 결과가 맞물리는게 아닌 따로 놀기 때문에 동시에 일어나지 않아서 그렇습니다. -> 데이터를 동시에 처리하기 때문에 시간을 효율적으로 사용할 수 있습니다.. 2022. 12. 15.