기술 면접 질문(5)

cptkuk91·2022년 9월 15일
1

Tech Interview

목록 보기
1/7
post-thumbnail

NODE_ENV에 대한 설명

환경 변수의 값을 확인하고 값에 따라 작업을 수행할 수 있게 합니다. NODE_ENV를 통해 환경 변수에 직접 접근하거나 검사 및 논리를 수행합니다.

HTTP Method types에 대해서 설명해주세요.

(GET, POST, HEAD, DELETE)

  • GET: 서버로부터 데이터를 취득합니다.
  • POST: 서버에 데이터를 추가, 작성합니다.
  • HEAD: 서버 리소스의 헤더(메타 데이터를 취득합니다.)
  • DELETE: 서버 데이터를 삭제합니다.

Node.js Middleware에 대해서 설명해주세요.

미들웨어란 클라이언트 요청이 오면 그 요청에 대한 응답을 하기 위해 중간에서 목적에 맞게 처리 하는 일을 하며, 거쳐가는 함수입니다. 요청 - 미들웨어 - 응답 으로 표현할 수 있고, 미들웨어를 통해 순차적으로 처리할 수 있습니다.

V8엔진과 관련해서.. (Node.js)

구글에서 만든 고성능 자바스크립트 엔진입니다. ECMAScript 표준에 맞게 구현됐고, ES2016부터는 Node 기능 대부분을 구현해놨습니다. 특히 Node.js는 V8엔진과 호환성이 좋고, 리스크를 줄이기 위해 V8엔진을 사용합니다.

Async, Await과 관련해서..

자바스크립트 비동기 처리 패턴 중 가장 최근에 나온 문법입니다. Promise 보다 편리하게 사용할 수 있고, 코드 작성이 직관적입니다. try, catch를 통해 err 또한 쉽게 찾아볼 수 있습니다.
await은 async내에서만 사용할 수 있으며, await을 통해 작업 완료를 기다리는 동안 엔진은 다른 일을 처리합니다.

Express, Package에 대해서..

Express란 Node.js 프레임워크 중 하나로 웹 어플리케이션, API개발을 위해 설계됐습니다.
(사실상 Node.js의 표준 서버 프레임워크입니다.)

Package란 Node.js에서 사용할 수 있는 모듈을 저장해 둔 곳이고, NPM을 통해 쉽게 사용할 수 있습니다.

이벤트루프란?

자바스크립트는 싱글 스레드로 한 번에 하나씩 일 처리를 합니다.
이벤트 루프를 통해 비동기 방식으로 동시성을 지원합니다.
이벤트 루프에 작업이 들어간 경우 작업이 완료 될 때 까지 다른 작업을 진행 할 수 있고, 다른 작업 완료했더라도 이벤트 루프에 큐에 들어간 작업의 완료까지 대기합니다.

Node.js 사용이 많은 Case에 대해서..

  • 실시간 채팅 서비스
  • Single Page Application
  • 스트리밍 서비스
  • Microservices Architecture

Microservices Architecture란?
작은 서비스가 여러개 모여 하나의 시스템을 제공하는 아키텍처를 뜻합니다.
각 서비스는 독립적이고 느슨하게 연결되어있습니다. 따라서 프로그램 전체를 빌드 후 재배치하지 않고도 기존 서비스에 대한 업데이트가 가능합니다. (하지만 통신방법이 복잡하고 테스트 과정이 복잡합니다.)

profile
메일은 매일 확인하고 있습니다. 궁금하신 부분이나 틀린 부분에 대한 지적사항이 있으시다면 언제든 편하게 연락 부탁드려요 :)

0개의 댓글