BackEnd
pm2를 사용하여 python 프로세스 관리하기
행복한 기린님
2022. 7. 27. 11:07
외부적으로도 사용할 수 있는 어노테이션 툴을 만들었다.
지금까진 Lit 이라는 프레임워크를 사용해 프론트 작업을 했었지만
최근 들어 Svelte에 흥미가 생겨 Svelte를 활용해서 작업을 진행했다.
Svelte에 대한 포스팅은 추후에 진행하도록 하자.
구조는 간단하다
API 서버에서 전체 이미지에 대한 특정한 특징을 가진 부분을 크롭하여 분리 저장하고
웹 서버에 해당 이미지를 전송한다.
이미지 전송 API , 전송한 이미지로부터 데이터를 받아 저장해 JSON 파일로 보관하는 API 두 가지가 필요했다.
위 2가지 동작과 특징을 가진 부분을 크롭해 저장하는 기능까지 구현된 코드를 클라우드 서버에 옮기게됐다.
클라우드 서버는 Ubuntu를 사용했고
pm2를 이용해 프로세스를 효율적으로 관리하기로 했다.
PM2 - Home
Advanced process manager for production Node.js applications. Load balancer, logs facility, startup script, micro service management, at a glance.
pm2.keymetrics.io
pm2 를 사용하기 위해선 npm 을 필요로한다.
sudo apt install npm
sudo npm install pm2 -g
pm2 설치 후
pm2 start app.py --name app-name --interpreter=python3
유용한 pm2 명령어
TO LIST YOUR APPS
pm2 list
TO RESTART YOUR APP
pm2 restart app_name
TO STOP YOUR APP
pm2 stop app_name
TO SEE LOGS OF YOUR APP
pm2 log app_name
TO DELETE YOUR APP
pm2 delete app_name