728x90
process
- 현재 실행중인 노드 프로세스에 대한 정보를 담고 있음
process.version : 설치된 노드의 버전
process.arch : 프로세스 아키텍처 정보
process.platform : 운영체제 플랫폼
process.pid : 현재 프로세스의 아이디
process.uptime() : 프로세스가 시작된 후 흐른 시간(초단위)
process.execPath : 노드의 경로
process.cwd() : 현재 프로세스가 실행되는 위치
process.cpuUsage() : 현재 cpu사용량
process.env
- 시스템 환경변수들이 들어있는 객체
- 비밀키(데이터베이스 비밀번호, 서드파티 앱 키 등)를 보관하는 용도로 쓰임
- 환경 변수는 process.env로 접근 가능
- - const secretId = process.env.SECRET_ID;
- - const secretCode = process.env.SECRET_CODE;
- 일부 환경 변수는 노드 실행 시 영향을 미침
- - 예시: NODE_OPTIONS(노드 실행 옵션), UV_THREADPOOL_SIZE(스레드풀 개수)
process.nextTick
- 이벤트 루프가 다른 콜백 함수들보다 nextTick의 콜백 함수를 우선적으로 처리
- 너무 남용하면 다른 콜백 함수들 실행이 늦어짐
- 비슷한 경우로 promise가 있음(nextTick처럼 우선순위가 높음)
- 아래 코드에서 setImmediate, setTimeout보다 nextTick과 promise가 먼저 실행됨
setImmediate(() => {
console.log('immediate');
});
process.nextTick(() => {
console.log('nextTick');
});
setTimeout(() => {
console.log('timeout');
});
Promise.resolve().then(() => console.log('promise'));
//콘솔창 결과
//nextTick
//promise
//timeout
//immediate반응형
'Full' 카테고리의 다른 글
| 노드 node 현재 파일 경로, 현재 폴더 경로 (0) | 2022.12.07 |
|---|---|
| 모듈 만들기 (0) | 2022.12.07 |
| Promise프로미스, async (0) | 2022.12.07 |
| 노드 서버의 장단점 (0) | 2022.11.30 |
댓글