테스트 사이트 - 개발 중인 베타 버전입니다

Node.js 서버의 기본적인 내용 정리

· 11년 전 · 2007 · 1

V8 자바스크립트 엔진이란?

V8은 자바스크립트를 바이트코드(bytecode)로 컴파일하거나 인터프리트(interpret)하는 대신 실행하기 전 직접적인 기계어(x86, ARM, 또는 MIPS)로 컴파일(compile)하여 성능을 향상시켰다. 추가적인 속도향상을 위해 인라인 캐싱(inline caching)과 같은 최적화 기법을 적용하였다.

(출처 : 위키 피디아)

 

동기 vs 비동기

동기란? 

- Http 통신, 동기 함수(기본적으로 C, java 등에서 쓰는 함수)

- 요청, 응답이 하나의 Cycle로 구성되어 있음

- 시간이 오래 걸리는 요청이면 응답받는데 시간이 오래 걸림

 

비동기란?

- 비동기 통신

- 요청 하고 응답은 콜백 으로 사용 ! (요청 하고 응답 받기 전까지 상관 안하고 다른 작업 수행 가능)

- 단, 콜백은 등록된(요청 보낸) 모든 클라이언트에게 broadcast

 

Javascript에서 가장 중요한 2가지

- 클로저 (공부 필요....) -실행 코드와 유효스코프의 조합

- 콜백 메서드 - 특정 조건, 시점에 실행 되기로 등록해 놓은 라이브러리


Node.js는 어디서 쓰고 있는가?

- LinkedIn ( java -> node.js 전환 CPU사용률 1/10으로 감소)

- Facebook

- ebay

- yammer


그렇다면 왜 쓰는가?

- 프론트앤드 개발자의 백엔드 개발자 전환이 쉽다(자바스크립트 언어 이므로)

- 비동기 방식이므로 시간이 긴 요청 보다 짧고 많은 요청에 적합하다. (요청이 많을 때 동기 통신의 경우 Thread가 많더라도 한계가 있다.)


Node.js란?

- Google V8 엔진 기반의 이벤트 드리븐 방식의 논-블록킹 I/O(비동기 방식)을 제공하는 서버측 자바스크립트 플랫폼

-  CPS(Continuation Passing Style) - 콜백함수를 실행 중인 함수의 인자로 넘겨주는 방식


수업 듣다 잘몰랐던 점 ! JavaScript에서 객체 , 함수 , 익명함수 즉시 실행

- 쓸만한 모듈등 정리해놓기


댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

댓글 1개

오.. 잘 보고 갑니다!

게시글 목록

번호 제목
384
12508
383
381
20395
12507
12506
12505
12504
12503
12502
12500
12499
12498
20392
12497
12496
12495
12494
12493
12492
12491
12490
12489
12488