서버가 실행 중이지만 서비스를 제공하지 않습니다.

서버가 실행 중이지만 서비스를 제공하지 않습니다.

start-stop-daemon으로 시작된 간단한 Python Flask 서버가 있습니다. 지난주에는 잘 작동했는데 이번 월요일에 더 이상 서비스가 제공되지 않는다는 사실을 알게 되었습니다( curl http://localhost/mypage다시는 돌아오지 않음). 마지막 로그는 금요일부터입니다.

이상한 점은 그것이 sudo service myService status"실행 중"이고 프로세스가 실제로 실행 중임을 확인한다는 것입니다( ps aux | grep $(cat /var/run/myservice.pid)).

무슨 일이 일어나고 있는지 알 수 있는 방법이 있나요? 다음에 어디로 가야할지 모르겠습니다.

답변1

플라스크(경량 Python 서버 프레임워크)가 원인인 것 같습니다. 왜 정지되는지에 대한 질문이 많이 있습니다.

내가 설명하는 동작은 이 상황에 적합합니다. 마치 Flask가 무한 루프에 빠지거나 스레드가 끝나기를 기다리거나 더 많은 메모리를 기다리는 것처럼 서버가 실행 중이지만 curl http://localhost...반환하지 않지만 실패하지도 않습니다. .

따라서 로그에는 아무것도 없고 충돌도 없으며 프로세스가 계속 실행 중이므로 무엇이 잘못되었는지 말하기가 어렵습니다. 열린 파일 수를 확인할 때까지. 그리고 약 1020개의 소켓이 오픈되었고, 서버를 더 이상 오픈할 수 없게 되었습니다. 그게 문제입니다. 여전히 고쳐야 하지만 적어도 상황은 설명됩니다.

관련 정보