JavaScript & Node.js

오우·2023년 2월 7일
0

자바스크립트(Javascript)는 아주 강력한 프로그래밍 언어

자바스크립트는 객체 기반의 스크립트 프로그래밍 언어로서,
주로 웹 개발에 많이 사용되는 것으로 알려져 있지만, 다른 응용프로그램의 내장 객체에도 접근할 수 있는 기능도 가지고 있기 때문에 응용 범위가 넓음. Node.js는 자바스크립트를 품고 있는 개발 플랫폼.
Node.js는 내장 HTTP 서버 라이브러리를 포함하고 있어 웹 서버에서 아파치 등의 별도 소프트웨어 없이 동작하는 것이 가능하며, 이를 통한 웹 서버의 동작에 있어 더 많은 통제에서 벗어나 여러 가지 기능을 가능하게 함

개발 프레임워크 및 라이브러리 순위에서는 Node.js가 1위

Node.js는 Chrome V8 JavaScript 엔진으로 빌드 된 JavaScript 런타임

❗️자바스크립트 런타임❗️
런타임이란 특정 언어로 만든 프로그램을 실행할 수 있는 환경을 뜻함.
따라서 노드는 자바스크립트 프로그램을 컴퓨터에서 실행할 수 있게 하는 자바스크립트 실행기임.

노드는 기본적으로 싱글 스레드, 논 블로킹 모델을 채용하므로 I/O 요청이 많이 발생하면 노드를 서버로 사용하는 것이 좋음.
하지만 노드는 CPU 부하가 큰 작업에는 적합하지 않음.
(그래서 우리가 요즘 시간에 Nest.js를 배우는 것.)

우리가 작성하는 코드는 모두 스레드 하나에서 처리되기 때문에 코드가 CPU 연산을 많이 요구하면 스레드 하나가 혼자서 감당하기 어려움.

즉, 개수는 많지만 크기는 작은 데이터를 실시간으로 주고받는데 노드는 적합함. 예를 들어 네트워트나 데이터베이스, 디스크 작업 같은 I/O에 특화되어있으며, 실시간 채팅 애플리케이션, 주식 차트도 포함됨.

결론적으로 노드의 장점은 첫 째, 멀티 스레드 방식에 비해 적은 컴퓨터 자원을 사용함. 둘 째, I/O 작업이 많은 서버로 적합함. 셋 째, 웹 서버가 내장되어 있어 별도의 웹서버를 설치할 필요가 없음. 넷 째, 자바스크립트를 사용하기 때문에 JSON 형식과 쉽게 호환됨.

출처: https://hanamon.kr/nodejs-%EA%B0%9C%EB%85%90-%EC%9D%B4%ED%95%B4%ED%95%98%EA%B8%B0/

출처:https://edu.goorm.io/learn/lecture/557/%ED%95%9C-%EB%88%88%EC%97%90-%EB%81%9D%EB%82%B4%EB%8A%94-node-js/lesson/21469/%EC%9E%90%EB%B0%94%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8%EB%9E%80

profile
나는 개발자, 나는 개발자라구.

0개의 댓글