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으로 감소)
- ebay
- yammer
그렇다면 왜 쓰는가?
- 프론트앤드 개발자의 백엔드 개발자 전환이 쉽다(자바스크립트 언어 이므로)
- 비동기 방식이므로 시간이 긴 요청 보다 짧고 많은 요청에 적합하다. (요청이 많을 때 동기 통신의 경우 Thread가 많더라도 한계가 있다.)
Node.js란?
- Google V8 엔진 기반의 이벤트 드리븐 방식의 논-블록킹 I/O(비동기 방식)을 제공하는 서버측 자바스크립트 플랫폼
- CPS(Continuation Passing Style) - 콜백함수를 실행 중인 함수의 인자로 넘겨주는 방식
수업 듣다 잘몰랐던 점 ! JavaScript에서 객체 , 함수 , 익명함수 즉시 실행
- 쓸만한 모듈등 정리해놓기
게시글 목록
| 번호 | 제목 |
|---|---|
| 12438 |
JavaScript
배경음악 랜덤 재생 하기 입니다.
|
| 12437 |
JavaScript
css 지원 여부 확인해서 다른 페이지로 이동하기 입니다.
|
| 12436 |
JavaScript
하부메뉴가 보였다가 숨겨졌다 하는 토글버튼 입니다.
|
| 12435 |
JavaScript
개별 페이지에 인덱스로 거쳐 들어오게 하기 입니다.
|
| 12434 |
JavaScript
랜덤으로 이미지 출력 되기 입니다.
|
| 12433 |
JavaScript
사용자 해상도 알아내기 입니다.
|
| 12432 |
JavaScript
붙여넣기 금지하기 입니다.
|
| 12431 |
MySQL
대소문자 데이터 조회하기
|
| 12430 |
JavaScript
퇴장시 팝업창 한번한 띄우기 입니다.
|
| 12429 | |
| 12428 |
PHP
신문 기사를 긁어오기 입니다.
|
| 12427 |
JavaScript
시도, 구군, 동 주소 select
|
| 12426 |
MySQL
커리로 DB 테이블 명세서 출력하기
|
| 12425 |
JavaScript
브라우저 해상도 구분없는 절대 x,y 좌표 값 구하기 입니다
|
| 12424 |
PHP
rss 읽어오기 입니다.
|
| 12423 |
JavaScript
자바스크립트로 Ajax 효과내기 입니다.
|
| 12422 | |
| 12421 |
JavaScript
키보드,마우스 등 불펌방지 입니다.
|
| 12420 |
JavaScript
해상도에 따라 서로 다른 페이지로 접속 하기 입니다.
|
| 12419 |
JavaScript
특정페이지에서 자동으로 새로고침 하기 입니다.
|
| 12418 |
JavaScript
마우스 오버시 이미지 안쪽에 테두리주기
|
| 12417 |
node.js
git 사용메뉴얼 보면 깝깝 하네요
|
| 12416 | |
| 12415 | |
| 12414 |
JavaScript
간결한 레이어 메뉴 입니다.
|
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기