pm2 cluster모드에서 504 timeout / nginx

조회수 2331회

안녕하세요!

우분투에서 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

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

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

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

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)