Node.js란 무엇일까요

서유진·2022년 2월 19일
0

Node.js

목록 보기
2/14

NODE와 JavaScript

JavaScript는 일반적으로 프론트엔드 등에서 사용하는 언어인데, 앞에 노드가 붙었습니다.
이게 도대체 어떤 언어인지 알아봅시다

Node.js의 정의

Node.js는 확장성 있는 네트워크 애플리케이션(특히 서버 사이드) 개발에 사용되는 소프트웨어 플랫폼.
내장 HTTP 서버 라이브러리를포함하고 있어 웹 서버에서 아파치 등의 별도의 소프트웨어 없이 동작하는 것이 가능하며 이를 통해 웹 서버의 동작에 있어 더 많은 통제를 가능케 한다.
작성 언어로 자바스크립트를 활용하며 논블로킹(Non-blocking)I/O와 단일 스레드 이벤트 루프를 통한 높은 처리 성능을 가지고 있다. (libuv 라이브러리)
V8로 빌드된 이벤트 기반 자바스크립트 런타임이다. 웹 서버와 같이 확장성 있는 네트워크 프로그램 제작을 위해 고안되었다.
Node.js 위키백과


  • Node.js는 자바스크립트를 사용하는 런타임 (=환경) 입니다.
    런타임이란 프로그램을 실행할 수 있는 환경을 뜻합니다.
    특히 V8 엔진이 탑재된 크롬은 다른 자바스크립트 엔진과 속도적인 측면에 장점을 갖게 되었고, 2009년 Ryan Dahl이 노드 프로젝트를 시작하면서 본격적으로 쓰여지게 됐다고 합니다.

  • 기본적으로 javascript는 스크립트 언어라 브라우저에 의존을 하게 됩니다.
    브라우저가 없으면 실행이 불가능하다는 뜻입니다.
    하지만 Node.js는 브라우저에서 독립되어 cmd, terminal등에서 브라우저 없이 사용이 가능하다는 장점이 있습니다.

  • 기존의 웹은 자바스크립트, 서버는 자바 등으로 언어가 분리된 서버-클라이언트 구조였습니다. 하지만 Node.js를 사용한다면 웹사이트에서 자바스크립트 하나만 사용할 수 있게 됩니다.

  • 아파치등 별도 소프트웨어로 별도 연결해야했던 HTTP 서버 라이브러리를 내장하고 있기 때문에 하나의 플랫폼에서 한계없는 기능을 구현가능하게끔 합니다.

✨ Node.js를 사용하면 좋은 서비스

  • 리얼타임 웹
  • 커스터마이징이 필요합 웹
  • 자바스크립트 api를 사용해야 하는 웹
  • 빠른 실행과 성능이 중요합 웹

➡ 비동기 방식을 사용하는 Node.js의 특성을 잘 이용할 수 있는 서비스

다음번엔 동기/비동기 방식에 대해 알아보겠습니다.
추가로 제가 node의 흐름을 이해할 때 도움 됐던 유튜브 영상 링크 같이 걸어둘게요.
안뇽

https://youtu.be/8aGhZQkoFbQ

profile
Backend Dev.

0개의 댓글