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

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

· 11년 전 · 2019 · 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개

오.. 잘 보고 갑니다!

게시글 목록

번호 제목
6615
6614
6606
19438
6604
6592
6588
6586
6583
6577
19437
6576
6575
6574
19435
27715
6571
6570
6562
6559
6553
6552
6551
6548
24572
6545
6544
6543
6541
6539
6527
6526
6524
6519
6516
27701
27699
6515
19434
6514
19433
6503
19432
6500
6497
6496
6491
6485
32041
6483
6479
6478
6475
6473
6467
6465
6462
27697
6454
6451
27695
6446
6440
6437
27688
6433
6430
6427
6426
6422
6421
6418
27686
27678
6414
6410
6404
6400
6398
6389
6384
6383
6378
6370
6363
6348
6338
6329
6328
6316
6309
6299
6296
27674
27671
6293
6282
24570
6277
6264