pm2 cluster모드에서 504 timeout / nginx


안녕하세요!

우분투에서 pm2 cluster mode로 노드 앱을 돌리고 있는 상황입니다.

nginx을 프록시 서버로 돌리고 있고 노드를 포트 8080으로 돌리고 있습니다.

요즘에 매우 자주 클라이언트에서 http요청을 보내면 랜덤하게 pending 이 지속되면서 응답이 오질 않는현상이 계속해서 발생중입니다ㅠㅠ.

nginx error 로그를 보면 nginx에는 잘들어오는데 pm2 cluster로의 연결이

(110: connection timeout) while connecting to upstream 이 찍힙니다.

또한 이 요청에 대해 node 로그를 보면 아예 로그가 찍히질 않는걸보아 요청자체가 씹히는 것 같습니다.

사용자가 많을때만 이런 현상이 발생하는줄 착각했는데, 적을때도 랜덤하게 계속발생 하는 상황이라, 무엇이 문제인지 찾기가 힘든상황이네요 ㅠㅠ.

pm2 cluster모드가 의심되긴합니다.

pm2와 노드의 cpu 사용률은 10%미만입니다.

저랑 가장 동일한 문제를 겪고있는 issue글입니다.

https://github.com/Unitech/pm2/issues/1484

혹시 이런현상 겪으신 적 있으신가요?

도와주시면 감사하겠습니다 ㅠㅠ

  • 2016년 09월 10일에 작성됨

  • pm2 cluster를 사용하지 않고 pm2 fort_mode를 포트로 나눠 앱을 여러개 실행시키는 방식으로하고 앞단 nginx에서 load balancing을 해주는걸로 했더니 해결된 것으로 보입니다. (아직까지는?? 나중에 에러가 재발할수있지만) 왜 이런문제가 발생했는지 흥미롭네요..ㅎㅎ ㅠ    김진혁   2016.9.11 04:30     
조회수 168


로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close