...
OS 모듈
OS 모듈은 실제 개발에서 많이 사용되는 모듈은 아니지만 운영체제와 시스템의 정보를 가져올 수 있는 모듈입니다.
CPU나 메모리, 디스크 용량이 얼마나 남았는지 확인이 필요할 때 사용합니다.
즉 사용자가 실행하는 환경에 따라서 값이 다르게 나옵니다.
전체 메소드는 API 문서를 참조바랍니다.
- os.tmpdir() : 임시 저장 폴더의 위치
- os.endianness() : CPU의 endianness(BE 또는 LE)
- os.hostname() : 호스트(컴퓨터) 이름
- os.type() : 운영체제 이름
- os.platform() : 운영체제 플랫폼
- os.arch() : 운영체제 아키텍처
- os.release() : 운영체제 버전
- os.uptime() : 운영체제가 실행된 시간
- os.loadavg() : 로드 에버리지 정보를 담은 배열
- os.totalmem() : 시스템의 총 메모리
- os.freemem() : 시스템의 가용 메모리
- os.cpus() : CPU의 정보를 담은 객체. CPU의 세부 정보를 반환합니다. 코어가 몇개인지. 8코어 16스레드 -> 16코어로 침
- os.networkInterfaces() : 네트워크 인터페이스 정보를 담은 배열
Process 모듈
proces.cwd()는 __dirname과 경로로서 많이 쓰입니다.
process.env
- 시스템 환경변수가 들어있는 객체
- 비밀번호 키 를 보관하는 용도로 쓰임
process.nextTick(콜백)
- 이벤트 루프가 다른 콜백 함수들보다 nextTick의 콜백 함수를 우선적으로 처리함
- 너무 남용하면 다른 콜백 함수들 실행이 늦어짐
- 비슷한 경우로 promise가 있음(nextTick처럼 우선순위가 높음)
process.exit
- 현재의 프로세스를 멈춤
- 코드가 없거나 0이면 정상 종료
- 0이 아닌 이외의 코드는 비정상 종료를 의미함 (일부러 비정상 종료를 표현하기 위해서 씀)
process.exit(1) // 비정상 종료
+ 메모리 늘리기
+ 쓰레드풀 개수 늘리기
인용한 부분에 있어 만일 누락된 출처가 있다면 반드시 알려주시면 감사하겠습니다
이 글이 좋으셨다면 구독 & 좋아요
여러분의 구독과 좋아요는
저자에게 큰 힘이 됩니다.