> 웹 프론트엔드 > 프런트엔드 Q&A > nodejs는 매번 시작해야 하나요?

nodejs는 매번 시작해야 하나요?

PHPz
풀어 주다: 2023-04-05 10:04:44
원래의
787명이 탐색했습니다.

Node.js는 웹 개발, 명령줄 도구 및 기타 분야에서 널리 사용되는 매우 인기 있는 서버 측 JavaScript 실행 환경입니다. 하지만 많은 초보자는 Node.js를 배울 때 다음과 같은 질문을 합니다. Node.js 애플리케이션을 실행할 때마다 다시 시작해야 합니까?

꼭 정답은 아닙니다. 아래에서 이 질문에 대해 자세히 답변해 보겠습니다.

먼저 Node.js의 기본 작동 방식을 살펴보겠습니다. Node.js로 애플리케이션을 작성할 때 일반적으로 JavaScript 파일을 생성한 다음 명령줄에서 node 명령을 사용하여 실행합니다. 예를 들어 app.js라는 파일을 만든 다음 명령줄에

node app.js
로그인 후 복사

를 입력하면 Node.js 런타임 환경이 시작되고 애플리케이션이 실행됩니다. 애플리케이션은 Ctrl+C 명령을 사용하여 종료할 때까지 계속 실행됩니다.

그렇다면 app.js 파일을 수정하면 Node.js를 다시 시작해야 수정 사항이 적용되나요? 대답은 반드시 그런 것은 아닙니다. 일부 정적 구성 매개변수나 데이터를 수정하고 프로그램 로직 수정을 포함하지 않는 경우 Node.js를 다시 시작하지 않고도 일부 도구를 사용하여 핫 업데이트를 완료할 수 있습니다. 예를 들어, nodemon 도구를 사용하여 파일 변경 사항을 모니터링하고 파일이 변경되면 자동으로 애플리케이션을 다시 시작할 수 있습니다. 구체적인 동작 방법은 다음과 같습니다.

1 먼저 nodemon을 설치해야 합니다.

npm install -g nodemon
로그인 후 복사

2를 입력합니다. 그런 다음 애플리케이션의 루트 디렉터리에 다음 내용으로 nodemon.json이라는 구성 파일을 만듭니다.

{
  "watch": ["src"],
  "ext": "js json",
  "ignore": ["node_modules"],
  "execMap": {
    "js": "node --inspect=0.0.0.0:9229"
  }
}
로그인 후 복사

그 중 watch 필드는 모니터링할 폴더를 지정하고 ext 필드는 다음을 지정합니다. 모니터링할 파일 접미사, 무시 필드는 무시할 폴더를 지정하고, execMap 필드는 실행할 명령을 지정하고, node 명령은 여기에서 지정되며, Node.js 디버깅 기능을 활성화하기 위해 --inspect 매개변수가 추가됩니다.

3. 마지막으로 명령줄에

nodemon app.js
로그인 후 복사

를 입력합니다. 이 명령은 nodemon 도구를 시작하고 애플리케이션을 모니터링하도록 합니다. 파일을 수정하면 nodemon은 자동으로 애플리케이션을 다시 시작합니다.

그러나 더 많은 경우에 우리가 수정하는 것은 구성 매개변수나 데이터보다는 프로그램 로직입니다. 이 경우 변경 사항을 적용하려면 Node.js를 다시 시작해야 합니다. 이는 Node.js를 시작한 후 애플리케이션을 기계어 코드로 컴파일하고 실행하기 위해 메모리에 로드하기 때문입니다. 프로그램 논리를 수정하는 경우 새 논리가 적용되도록 기계어 코드를 다시 컴파일하고 로드해야 합니다.

요약하자면, Node.js를 매번 시작해야 하는지 여부는 무엇을 수정하는지에 따라 다릅니다. 정적 구성 매개변수나 데이터를 수정하는 경우 도구를 사용하여 핫 업데이트를 구현할 수 있습니다. 프로그램 로직을 수정하는 경우 Node.js를 다시 시작해야 합니다.

이 기사가 여러분의 질문에 답하고 Node.js의 작동 방식을 더 잘 이해할 수 있기를 바랍니다.

위 내용은 nodejs는 매번 시작해야 하나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿