본문 바로가기

nodejs14

[NodeJS] 서버로서 NodeJS 서버로서 NodeJSNode.js는 JavaScript를 서버 측에서 실행할 수 있게 해주는 플랫폼입니다. 비동기 I/O를 기반으로 하여 높은 성능을 제공하며, 주로 웹 서버 및 API 서버 구축에 많이 사용됩니다. Node.js의 주요 특징과 함께 기본적인 웹 서버 예제를 살펴보겠습니다.Node.js의 주요 특징비동기 I/O: Node.js는 비동기 방식으로 입출력을 처리하여 높은 처리 성능을 자랑합니다.이벤트 기반: Node.js는 이벤트 루프를 사용하여 이벤트가 발생할 때 특정 작업을 수행합니다.싱글 스레드: Node.js는 싱글 스레드 모델을 사용하지만 내부적으로는 여러 스레드를 활용하여 비동기 작업을 처리합니다.NPM (Node Package Manager): Node.js는 NPM을 통해 다양.. 2024. 5. 23.
Node.js 장점과 단점 Node.js 장점과 단점Node.js는 현대 웹 애플리케이션 개발에 널리 사용되는 플랫폼으로, 다양한 장점을 제공하지만 몇몇 단점도 있습니다. 각각의 장점과 단점을 구체적인 예시와 함께 살펴보겠습니다.Node.js 장점비동기 이벤트 기반 아키텍처예시: 실시간 채팅 애플리케이션설명: Node.js의 비동기 처리 능력은 실시간 채팅과 같은 애플리케이션에 이상적입니다. 사용자의 메시지는 서버에 도달하면 즉시 다른 사용자에게 전달되고, 이 과정에서 서버는 다른 요청을 계속 처리할 수 있습니다. 이는 대기 시간을 최소화하고, 서버의 처리 능력을 극대화합니다.단일 프로그래밍 언어 사용예시: 전체 스택 JavaScript 개발설명: 프론트엔드와 백엔드 모두 JavaScript를 사용하여 개발할 수 있습니다. 이는 .. 2024. 5. 18.
Node.js 배경사와 이벤트 기반 비동기 방식의 이해 Node.js 배경사와 이벤트 기반 비동기 방식의 이해Node.js는 2009년 라이언 달(Ryan Dahl)에 의해 처음 개발되었습니다. 그는 기존의 서버 사이드 언어들이 페이지를 로딩하는 동안 대부분의 시간을 데이터베이스에서 데이터를 읽어오거나 파일 시스템과 같은 리소스에 접근하는 I/O 작업에 대기하는 문제점을 보고, 이를 개선하고자 했습니다. 이때 주목한 것이 자바스크립트의 비동기 이벤트 처리 능력과 V8 엔진의 빠른 실행 속도였습니다. 달은 이 두 가지를 활용하여 웹 서버를 구축하는 새로운 방식인 Node.js를 창안했습니다.이벤트 기반(Event-Driven) 아키텍처Node.js의 이벤트 기반 모델은 "이벤트 루프"라고 불리는 구조를 중심으로 동작합니다. 이벤트 루프는 들어오는 요청, 데이터.. 2024. 5. 15.
웹 서버 개발에도 쓰이는 Node.js Node.jsNode.js는 오픈 소스, 크로스 플랫폼 JavaScript 런타임 환경으로, 주로 서버 사이드 애플리케이션 개발에 사용됩니다. 웹 브라우저 밖에서 JavaScript를 실행할 수 있게 해 주며, 특히 비동기 이벤트 구동 방식의 애플리케이션을 구축하는 데 적합합니다. 여기서 Node.js의 주요 역할과 특징을 몇 가지 살펴보겠습니다.비동기 및 이벤트 구동: Node.js는 비동기적인 이벤트 구동 아키텍처를 사용하여, I/O 작업(파일 시스템 접근, 네트워크 통신 등)을 효율적으로 처리합니다. 이는 서버가 동시에 많은 연결을 받아들이고, 각 연결에서 입출력 작업이 완료되기를 기다리지 않고 즉시 다음 작업을 수행할 수 있게 해 줍니다.단일 스레드 모델: Node.js는 기본적으로 단일 스레드 .. 2024. 5. 14.
[NodeJS] Node.js의 주요 특징 Node.jsNode.js는 자바스크립트 코드를 브라우저 외부, 즉 사용자의 컴퓨터에서 실행할 수 있게 해 준다는 것입니다. 자바스크립트는 원래 웹 브라우저에서 동작하는 스크립트 언어로 개발되었지만, Node.js는 이를 브라우저 환경이 아닌 서버 사이드에서도 사용할 수 있도록 확장한 플랫폼입니다.Node.js의 주요 특징과 그 의미서버 사이드 자바스크립트 실행 환경: Node.js는 V8 엔진 위에 구축되어 있습니다. 이 V8 엔진은 구글 크롬 브라우저에서 사용되는 것과 동일한 자바스크립트 엔진이며, Node.js는 이를 사용하여 브라우저가 아닌 서버에서 자바스크립트 코드를 실행할 수 있게 합니다.비동기 및 이벤트 기반 아키텍처: Node.js는 비동기적인 이벤트 처리 방식을 채택하여 효율적으로 네트워.. 2024. 4. 29.
[Node.js] Node.js가 서버에서 JavaScript를 실행하는 원리 Node.js가 서버에서 JavaScript를 실행하는 원리 Node.js가 서버에서 JavaScript를 실행하는 원리는 Node.js의 핵심 구성 요소인 V8 엔진과 비동기 I/O 처리, 그리고 이벤트 기반의 아키텍처에 기반합니다. V8 엔진 Node.js는 Google Chrome 브라우저에서 사용되는 V8 JavaScript 엔진 위에 구축되어 있습니다. V8 엔진은 C++로 작성되었으며, JavaScript 코드를 기계어로 직접 컴파일하여 빠르게 실행할 수 있게 해 줍니다. 이 컴파일 과정은 Just-In-Time (JIT) 컴파일이라고 불리며, 실행 시점에 최적화된 기계어 코드로 변환함으로써, 고성능을 제공합니다. 비동기 I/O 처리 전통적인 서버 측 프로그래밍 언어는 클라이언트의 요청을 처리.. 2024. 3. 24.