nodejs: 44개의 글
![](http://i1.daumcdn.net/thumb/C200x150/?fname=https://blog.kakaocdn.net/dn/PVX6T/btq0pwYVF6D/DvyhbdCmQxDbCow0zNJzmK/img.png)
1. 중첩 콜백 콜백지옥에 빠지기 쉬운 상황 task1 실행 이후에 task2,3,4 등이 순차적 실행 task1 실행 결과를 이용해 task2 가 실행 예제로 본다면 아래와 같은 상황이다. task1(a, b, function(err, result1) { task2(c, function(err, result2) { task3... task4... }); }); 2. Async 참조문서 : https://caolan.github.io/async/docs.html 외부모듈이기 때문에 npm install async로 설치한다. 행위 순서 제어 series(tasks[, callback]) : 각 태스크는 함수이고, 중간에 에러가 나면 다음태스크를 실행하지 않고, 완료 콜백으로 에러를 전달한다. result..
![](http://i1.daumcdn.net/thumb/C200x150/?fname=https://blog.kakaocdn.net/dn/cmvti0/btq0qAGMu5x/a9yq7pf0L95dPq4SK0uHf0/img.png)
참조문서 : https://docs.npmjs.com/ NPM(Node Package Manager)은 패키지 매니저로 확장모듈 설치, 삭제, 검색, 정보, 패키지 정보 작성 등을 할 수 있다. 노드의 모듈시스템은 상호운용이 가능하도록 모듈을 생성하는 방법인 CommonJS 모듈 시스템을 본 따 만들었다. 1. 주요 옵션 npm init : 패키지 준비, package.json 생성 npm install : 패키지 정보에 있는 모듈 설치 npm install [Module] : 개별 패키지 설치 npm list : 설치된 모듈 목록 보기 npm info : 모듈 정보 npm search : 모듈 검색 npm update : 모듈 업데이트 npm uninstall : 모듈 삭제 2. 모듈 설치 의존성있으면..
![](http://i1.daumcdn.net/thumb/C200x150/?fname=https://blog.kakaocdn.net/dn/cyEJW1/btq0mx5CkC1/Ijbg0Al6rzmdVfno99XQh0/img.png)
참조문서 : https://nodejs.org/dist/latest-v6.x/docs/api/ node에서 모듈은 다른 언어의 라이브러리에 해당한다. 이 포스팅 당시 버전은 v6.11.0 이다. API 문서가 잘되어 있다~ API의 안정도(stability) 0 : deprecated 1 : Experimental 2 : Stable 3 : Locked , 더이상 변경없음 1. node의 모듈 1-1. 모듈의 로딩 절대경로 혹은 상대경로 이용 require(모듈명); 1-2. 모듈의 종류 기본 모듈 : 미리 컴파일된 상태로 제공되는 라이브러리 디렉터리 확장모듈 : npm으로 별도설치, node_modules 1-3. 모듈 함수 객체 생성없이 모듈에 직접 사용하는 함수다. 1-4. 주요 기본 모듈 1-4-..
![](http://i1.daumcdn.net/thumb/C200x150/?fname=https://blog.kakaocdn.net/dn/qCWUA/btq0qA05mM2/UrYfAYchrsNU05fOn4KV8k/img.png)
1. Nodejs 란? 2009년에 Ryan Dahl이 발표했다. 노드는 구글의 V8 JavaScript 엔진에 기반한다. 싱글스레드 기반 비동기 이벤트 위주 IO를 사용하는 고도의 확장성을 가진 시스템이다. 간단한 작업을 수행하지만 빈도가 높은 웹 어플리케이션에 이상적이다. 특징 싱글 쓰레드 : 문맥교환으로 인한 오버헤드X 비동기 IO : CPU time loss를 피함, io요청이 있으면 워커한테 던져놓고 쓰레드는 다른일을 계속 받는다. 이벤트 기반 : epool 또는 kqueue를 사용 경량 프레임워크 풍부한 라이브러리 : 각종 모듈 서버와 클라이언트에서 사용하는 언어(JS)가 같음 2. Nodejs 아키텍처 구글 이미지 검색에서 나오는 노드아키텍처들 중에 libev가 있는 건 옛날 사진이다. 노드..