일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 백준 알고리즘
- node.js
- Node.js Express
- 맥북 유용한 앱
- Express middleware
- react jsx
- 자바 기술면접
- 백준
- Java tech interview
- 맥북 초보
- AtomEditor
- jsx 문법
- 자바 인터뷰
- 자바 영어면접
- React
- 기술면접
- 맥북 팁
- 자바 개발자
- mysql
- 맥북 사용법
- 아톰에디터
- react state
- 생활코딩
- React props
- 백준 단계별로 풀어보기
- 리액트
- tech interview
- 자바 면접
- 맥북 필수 앱
- 알고리즘
- Today
- Total
song.log
[Node.js] 동기/비동기, 콜백함수, 패키지 매니저와 PM2 사용법 본문
1. 동기/비동기
fs.readFile(path,option,callback) vs fs.readFileSync(path,option)
비동기 동기
동기에서는 Sample.txt를 읽고 나서 C를 실행할 수 있었지만, 비동기의 경우 Sample.txt를 읽는 것과 상관없이 C를 실행했기 때문에 순서가 다르게 나온다.
2. Callback 함수
자바스크립트에서는 변수에 함수를 할당할 수 있습니다. 따라서 변수에 할당된 함수를 다른 함수의 파라미터로 전달할 수 있습니다. 이렇게 파라미터로 전달된 함수를 다른 함수의 내부에서 호출하는 것이 콜백 함수입니다.
참조 : Do it! Node.js 프로그래밍 : 실제 서버로 구동 가능한 코드로 배운다! [전면개정판]
자바스크립트는 함수의 이름을 미리 정한 상태에서 불러주는 방식과
function a(){
console.log('A');
}
a();
변수 a에 함수를 받아서 불러주는 방식이 있다.
var a = function (){
console.log('A');
}
a();
function slowfunc(callback){
callback();
}
slowfunc(a);
이 때 오랜시간 후에 부를 slowfunc라는 함수에 callback이라는 인자를 받는 함수를 사용한다.
callback이라는 함수는 a함수를 부르고 콘솔에 A가 출력된다.
3. 패키지 매니저와 PM2
npm : Node Package Manager
오늘 새로 깔아볼 npm
: PM2 - node.js를 하나하나 껐다켰다를 반복할 필요 없이 변화가 생기면 자동으로 껐다 켜주는 역할
npm install pm2 -g
→여기서 -g는 내가 깔고 있는 소프트웨어가 독립된 존재로 컴퓨터 내에서 쓰일 수 있도록 한다를 의미
pm2 start
pm2 monit
pm2 list
pm2 stop
pm2 start --watch
pm2 log
pm2 kill
restart되면서 log까지 볼 수 있는 것
pm2 start main.js --watch --no-daemon
restart되지 않으면서 log까지 볼 수 있는 것 - passport/session을 사용할 때 필요
pm2 start main.js --watch --ignore-watch="data/* sessions/*" --no-daemon
참조한 생활코딩 URL :
https://opentutorials.org/module/3549/21132
'DevLog > Node.js' 카테고리의 다른 글
[Node.js] 모듈의 형식&제작, 입력 정보/출력 정보에 대한보안 (0) | 2019.12.21 |
---|---|
[Node.js] 글생성, 글수정, 글삭제 : post방식으로 전송된 데이터 받기, Redirection, 객체를 이용해서 템플릿 기능 정리 정돈하기 (0) | 2019.12.21 |
[Node.js] 파일목록 알아내기, 글 목록 출력하기, 함수를 이용해서 정리 정돈하기 (0) | 2019.12.19 |
[Node.js] 파일 읽기, 파일을 이용해 본문 구현, 콘솔에서의 입력값, 홈페이지 구현 (0) | 2019.12.19 |
[Node.js] 웹서버 만들기, URL로 입력된 값 사용하기, 동적인 웹페이지 만들기 (1) | 2019.12.19 |