[백엔드 면접 질문] Node.js, 데이터베이스 관련

2024. 5. 30. 19:36카테고리 없음

728x90
반응형

 

Node.js란 무엇인가요?

Node.js는 자바스크립트의 런타임 환경이며 Node.js는 비동기 이벤트 기반 프로그래밍 모델을 사용하여 높은 처리량 확장성을 제공합니다.

 

Node.js의 주요 특징은 무엇인가요?

비동기 I/O : Node.js는 비동기 이벤트 기반 프로그래밍 모델을 사용하므로 I/O 작업을 동기적으로 처리하지 않고 비동기적으로 처리할 수 있습니다. 이것은 Node.js가 대규모 애플리케이션에서 높은 처리량과 확장성을 제공하는 이유 중 하나입니다.

빠른 속도 : Node.js는 V8 자바스크립트 엔진을 사용하여 빠른 속도로 코드를 실행합니다. 또한 이벤트 루프와 함께 자동하여 더 빠른 속도를 제공합니다.

싱글 스레드 : Node.js는 단일 스레드 모델을 사용하므로 스레드 간 동기화 문제를 피할 수 있습니다.

 

npm과 yarn에 차이가 무엇인가요?

npm과 yarn은 라이브러리를 설치할수있는 패키지관리자이지만 둘은 CLI, 속도, 보안 Lock파일 등에 차이가 있습니다

 

 

Node.js에서 require와 import에 차이점은 무엇인가요?

Node.js에서 라이브러리 또는 함수를 다른파일에서 사용을 할 때 require, import를 사용합니다 이 둘에 차이점을 설명드리겠습니다

require는 CommonJs 모듈은 Node.js에서 기본적으로 사용되며 동기적으로 모듈을 불러옵니다.

import는 ES6모듈 시스템으로 JavaScript의 최신표준에 따라 설계되며 비동기적으로 모듈을 불러올수있습니다.

 

RESTful API에 대해서 설명해보세요

RESTful API는 Resource, Method, Reperesntation 3가지를 사용합니다. 이 3가지를 통해 상태가 전이되는 것을 표현한다면 클라이언트와 서버가 간의 상태 전이를 관리하는 방식입니다.

 

 

Node.js에서 동기와 비동기 차이

[동기 방식]

  • 요청을 보내고 실행이 끝나면 다음 동작을 처리하는 방식
  • 여러가지 요청을 동시에 처리할 수 없어 효율이 떨어진다

[비동기 방식]

  • 요청을 보내고 해당 동작의 처리 여부와 상관없이 다음 요청이 동작하는 방식
  • 작업이 완료되는 시간을 기다릴 피룡가 없기 때문에 자원을 효율적으로 사용 가능

 

Node.js 이벤트 루프가 무엇인지 설명해보세요

1. Node.js의 이벤트 루프는 비동기적인 작업을 처리하는 메커니즘으로, 단일 스레드에서 여러 작업을 효율적으로 수행할 수 있게 합니다.

 

2. 단일 스레드가 무엇인가요?

단일 스레드는 하나의 실행 흐름을 의미합니다. 스레드는 CPU에서 작업을 수행하는 가장 작은 단위로, 단일 스레드 환경에서는 한 번에 하나의 작업만 실행할 수 있습니다

 

 

728x90
반응형