지식

node.js pm2 app launching

애앨리 2024. 1. 14. 22:17

 

일전에 캐시워크 이벤트에 된통 당한적이 있었다. 

만만하게 봤다가 서버다운을 경험

1차에서 준비 하나도 안하고 GO 했다가 다운

2차에서 만반의 준비를 하고(서버대수랑 스펙만 업업업) 하고 진행했다가 한번 더 다운

 

임원진 및 현업들이 좋게 말해주셨지만 식은땀을 한바가지를 흘리고 

 

이번에 진행하는 3차 이벤트 진행

이번엔 node.js도 튜닝을 하고 트랜젝션이 일어나지 않는 html gate 페이지도 만들고 만반의 준비를 하고

 

NCP에서 서버 이미지 뜬 다음에 동일 이미지로 clone  14대 생성 똭~! 하고

 

pm2 기동을 했는데 어랏 간헐적으로 404 에러가 뜨는거다

 

 

이것저것 검색을 해봤더니 http 에서 https로 못보내줘서 그렇다나? 

아그래서 LB셋팅을 다시 확인하고 nginx 랑 ncp lb둘데 router 설정을 확인한다음에 다시 똭 띄웠는데 동일하다. 

제길 머야?머야? 도리도리 (아 굥싫엇) 암튼  하면서 pm2 공부를 시작 기본적인 명령어 도 모르면서 운영을했다..(반성)

 

pm2 status 로 봤더니 launching  아 이전에도 이거 있었지 하면서  

 

pm2 delete 명령어로 launching 되어있는 app 삭제 하고

app이 3개였으니까 더 늘려야지 하면서 

pm2 scale 명령어로 app 증설  이게 cpu  코어 갯수만큼 사용 가능하다는데 암튼 이벤트 한다고 사양좀 올렸으니까 

6대로 증설 고고고

 

 

근데 그대로다.. ㅠ

 

그래서 다시 검색 고고고 기억이 날듯 말듯.. 전에 했던거 같은데

 

스택오버 플로에서 찾았는데 음.. 히스토리에 안남아 있네.. 없어졌어

 

내가 생각하는 결론 

0번 id의프로세스가 문제가 생겼을때 가능 한 프로세스만 봐야 하는거아닌가?

pm2 kill 하고 재기동 해도 동일 현상이 재발생해서 

 

결국 node 랑 pm2 관련 프로세스 전체를 리셋 하는거다. 

 

아래 이미지를 보면 pkill 명령어를 사용 관련 프로세스 전체를 리셋 하고 기동 하니 정상 작동

 

다 해결하고 나서 드는 생각은

내가 기존에 운영하는 서버를 복하고 서버를 셋팅했더니 pm2가 알아서 기존 프로세스를 기동 해주었지 않을까?

그것도 모르고 나는 컨테이너 올린다고 작업하다보니 꼬인거지 않을까? 라고 상상

 

엔지니어긴한데.. 프론트/백엔드/SE/DB 등등 다하는 엔지니어가 써봄

이러다보니 깊게 알지를 못함.

 

 

사담인데..

 

ecommerce 에서 vue.js나 react 같은 언어가 정말 어울리는 언어라고 컴포논트 설계를 해서

구조를 만들놓은 프로젝트 한번 구경 해보고 싶음...

 

그리고 정말 그렇게 잘 운영하고 있는지도 궁금

현업의 그 요구들을 다 받아주고 있는지도 궁금함


아.. 암튼 첨해보는 vue.js 좋은거 같은데.. 좋긴 좋은데.. 이 업체의 설계 방향을 내가 이해를 못한거야  라고 생각 하면서

분석 운영하는중...

 

그렇담 관리자는 왜 vue 로 안하고 jstl이야.. 참.. 안타까워!

 

공부나 해야지