node.js 애플리케이션을 실행하려고 합니다. 때때로 내 응용 프로그램이 실행되지 않는 것을 발견하는데 그 이유를 모르겠습니다. 나는 항상 nodemon과 nohup을 사용해 왔습니다. 화면을 설정했을 때 며칠 후 애플리케이션이 다시 다운되었다는 사실을 알게 되었고 SSH에 로그인하여 화면이 작동하지 않는 것을 확인했습니다. 내 애플리케이션을 영구 실행하면 --minUptime, --spinSleepTime을 설정하지 않았으며 기본 10000ms를 사용하고 있다는 경고가 표시됩니다. 이것은 내 호스트 서버가 10초 이내에 응답하지 않으면 내 "영원히"가 종료된다는 의미입니까?
편집: 이것이 이와 같이 호스팅하는 첫 번째 프로젝트이기 때문에 어떤 정보를 공유하고 어디서 얻을 수 있는지 잘 모르겠습니다. 제가 아는 한 2x2 CPU 및 3GB로 서버를 a2hosting.com에 호스팅하고 있습니다. 램.
답변1
이것은 있을 수 없는 기회일 수도 있습니다. 개인적으로, 과거에는 앱에서 계속 데이터를 출력하지만 네트워크 문제 등으로 인해 클라이언트 연결이 차단되는 경우 화면에서 다른 앱이 실행되는 데 문제가 있었던 적이 있습니다. 이는 또한 기본적으로 애플리케이션을 차단하므로 애플리케이션에서 예기치 않은 동작이 발생할 수 있습니다. 차단된 클라이언트 연결이 애플리케이션에 영향을 미치지 않도록 하려면 다음 행을 다음에 추가할 수 있습니다 ~/.screenrc
.
defnonblock on
이 내용을 적용하려면 화면을 다시 시작해야 합니다.