Full5 노드 node process process - 현재 실행중인 노드 프로세스에 대한 정보를 담고 있음 process.version : 설치된 노드의 버전 process.arch : 프로세스 아키텍처 정보 process.platform : 운영체제 플랫폼 process.pid : 현재 프로세스의 아이디 process.uptime() : 프로세스가 시작된 후 흐른 시간(초단위) process.execPath : 노드의 경로 process.cwd() : 현재 프로세스가 실행되는 위치 process.cpuUsage() : 현재 cpu사용량 process.env - 시스템 환경변수들이 들어있는 객체 - 비밀키(데이터베이스 비밀번호, 서드파티 앱 키 등)를 보관하는 용도로 쓰임 - 환경 변수는 process.env로 접근 가능 - - const.. 2022. 12. 8. 노드 node 현재 파일 경로, 현재 폴더 경로 file.js라면 console.log(__filename); //현재 파일 경로 console.log(__dirname); //현재 폴더 경로 노드로 실행할때 콘솔에서 node file.js 치면됨 2022. 12. 7. 모듈 만들기 모듈 - 특정한 기능을 하는 함수나 변수들의 집합 - 모듈로 만들면 여러 프로그램에서 재사용 가능 - 노드는 자바스크립트 코드를 모듈로 만들 수 있음 A파일 const odd = '홀수입니다'; const even = '짝수입니다'; module.exports = { odd, even, }; B파일 const value = require('./A); console.log(value); //node B //이 결과는 { odd: '홀수입니다'; even: '짝수입니다'} //이런식으로 객체 형태로 나옴 2022. 12. 7. Promise프로미스, async 프로미스 (Promise) - 내용은 실행되었지만 결과를 아직 반환하지 않은 객체 - Then을 붙이면 결과를 반환함 - 실행이 완료되지 않았으면 완료된 후에 Then내부함수가 실행됨 - resolve(성공리턴값) -> then으로 연결 - Reject(실패리턴값) -> catch로 연결 - Finally 부분은 무조건 실행됨 const condition = true; const promise = new Promise((resolve, reject) => { if(condition) { resolve('성공'); } else { reject('실패'); } }); promise .then((message) => { console.log(message); }) .catch((error) => { conso.. 2022. 12. 7. 노드 서버의 장단점 서버 : 네트워크를 통해 클라이언트에 정보나 서비스를 제공하는 컴퓨터 또는 프로그램 클라이언트 : 서버에 요청을 보내는 주체(브라우저, 데스크탑 프로그램, 모바일 앱, 다른 서버에 요청을 보내는 서버) 노드 서버의 장점 1. 멀티 스레드 방식에 비해 컴퓨터 자원을 적게 사용함 2. I/O작업이 많은 서버로 적합 3. 멀티 스레드 방식보다 쉬움 4. 웹 서버가 내장되어 있음 5. 자바스크립트를 사용함 6. JSON형식과 호환하기 쉬움 노드 서버의 단점 1. 싱글 스레드라서 CPU코어를 하나만 사용함 2. CPU작업이 많은 서버로는 부적합 3. 하나뿐인 스레드가 멈추지 않도록 관리해야함 4. 서버 규모가 커졌을 때 서버를 관리하기 어려움 5. 어중간한 성능 CPU작업을 위해 AWS Lambda나 Google.. 2022. 11. 30. 이전 1 다음