웹 프로젝트

카이스트 친구와 함께하는 장고 공부

JaeHyunShin 2020. 12. 31. 18:29

https://blog.outsider.ne.kr/1197

  1. cluster mode
  2. json 으로 정리
  3. log
  4. 모니터링

이 세가지만 주로 보면 괜찮을 것 같습니다

{ "apps": [{ "name": "example", "script": "app.js", # 이부분을 잘 처리를 해두면 괜찮을거 같습니다 "watch": true, "env": { "NODE_ENV": "production", "API_PORT":3000 }, "exec_mode": "cluster", "instances": 0 }] }

https://jybaek.tistory.com/716

요기에서, 아래와 같이 log 파일을 외부에 저장을 할수 있도록 설정을 해두는 것도 필요하다고 생각합니다
[아래 명령어 말고도]

npx pm2 logs


적다가 적은게 아까워서 그냥 두는 것

npm init -y npm install express # 이게 중요해요 npm install pm2

app.js를 아래와 같이 작성을 해주고

const express = require("express"); const app = express(); console.log("Server Started"); app.get("/",(req, res)=>{ res.send("Welcome to the Testing api"); }); app.listen(3000)

# 아래 명령어를 실행을 시켜준다면, npx pm2 start app.js

이것을 볼 수 있있습니다.

# 이 명령어를 통해서, 어떤 log가 쌓였는지 확인을 할 수 있으며 npx pm2 logs # 이 명령어를 통해서, 어떤 프로그램을 현재 켜두고 있는지 확인을 할 수 있습니다. npx pm2 list # 아래 명령어를 통해서 실행중인 서버를 종료 할수 있습니다. npx pm2 stop app[name]

 

예제
https://velog.io/@josworks27/%EC%9D%B8%EC%A6%9D-%EB%AF%B8%EB%93%A4%EC%9B%A8%EC%96%B4-%EA%B5%AC%ED%98%84
https://jhyeok.com/node-backend-structure/
https://velog.io/@hopsprings2/%EA%B2%AC%EA%B3%A0%ED%95%9C-node.js-%ED%94%84%EB%A1%9C%EC%A0%9D%ED%8A%B8-%EC%95%84%ED%82%A4%ED%85%8D%EC%B3%90-%EC%84%A4%EA%B3%84%ED%95%98%EA%B8%B0
https://codeburst.io/better-error-handling-in-express-js-b118fc29e9c7
https://siner308.github.io/2019/12/17/typescript-class-validator/

참고 개발 문서
https://www.npmjs.com/package/routing-controllers#creating-your-own-express-middleware
https://docs.typestack.community/typedi/v/develop/01-getting-started
https://typeorm.io/#/
https://github.com/typestack/class-validator
https://github.com/typestack/class-transformer

'웹 프로젝트' 카테고리의 다른 글

Spring Boot  (0) 2021.02.02
Docker 컨테이너 관련 커맨드 사용법  (0) 2021.02.01
Swagger  (0) 2021.01.31
Django Model 관련한 공부  (0) 2021.01.23
서버 관련 개념  (0) 2020.01.20