Node.js
Process 모듈
index.ys
2023. 6. 10. 00:49
process 모듈
- 설치된 노드의 버전을 확인 할수 잇음
process.version //v16.18.0
- 프로세서 아키텍쳐 정보
process.arch //'x64'
- 프로세스가 실행되는 폴더 위치
process.cwd() //'C:\\Users\\user\\Desktop\\소켓모음\\Square-with-me-BE'
- 프로세스가 실행되는 플랫폼 정보
process.platform //'win32'
- 현재프로세스의 아이디 프로세스를 여러개 가질때 구분할 수 있음
process.pid // 15168
- 프로세스가 시작된 이후 흐른 시간 단위는 초.
process.uptime() //303.592022
- 노드가 설치된 경로
process.execPath //C:\\Program Files\\nodejs\\node.exe
- 현재 cpu사용량
process.cpuUsage() //{ user: 656000, system: 500000 }
- 노드 서버를 종료하기
process.exit(0)
process.exit(1) //서버에서 에러가 난 경우 에러나 났음을 알리고 서버를 종료함
process.env
- 환경변수가 들어있는 객체 비밀키 등을 보관하는 용도로 쓰임
- 환경변수는 process.env로 접근가능
환경변수 확인하기
process.nexTick
- 이벤트 루프가 다른 콜백 함수들보다 nextTick의 콜백 함수를 우선적으로 처리함
- 너무 남용하면 다른 콜백 함수들 실행이 늦어짐
- 비슷한 경우로 promise가 있음
- setImmediate와 setTimeout은 환경에따라 어떤 함수가 실행될지 모름 노드에서는 setImmediate만 사용
setImmediate(() => {
console.log('immediate 실행')
})
process.nextTick(() => {
console.log('nextTick 실행')
})
setTimeout(() => {
console.log('timeout 실행')
}, 0)
Promise.resolve().then(() => {
console.log('프로미스 실행')
})