-
Notifications
You must be signed in to change notification settings - Fork 1
프로젝트 구조
Dongmin Shin edited this page Dec 20, 2020
·
8 revisions
- 프론트엔드, 백엔드, SDK 모두 타입스크립트를 도입
- 프론트엔드와 백엔드 모두를 도커 컨테이너화하여 배포&운영
- docker-compose로 프론트엔드,백엔드를 도커 이미지 빌드, 컨테이너 자동 실행하도록 docker-compose.yml 작성
- 주기적인 배포 일자(보통 목요일)에 담당자가 스크립트 실행하여 배포
React.js프로젝트 webpack 빌드 + Nginx를 묶어 도커 이미지 빌드, 컨테이너 실행
Nginx를 리버스 프록시로 사용
Nginx가 포트 80번으로 오는 모든 요청중 /api에 해당하는 요청은 백엔드 서버 컨테이너 두곳으로 분배하여 부하 분산
로드 밸런싱 알고리즘은 라운드 로빈 방식, 두 서버에 균등하게 트래픽 분배
- 라운드 로빈 : 클라이언트의 요청을 순서대로 분배하는 방식
MongoDB 도커 컨테이너
pm2 클러스터 모드 + express.js를 묶어 도커 이미지 빌드 및 컨테이너 실행
- pm2 클러스터 모드로 실행하는 서버의 cpu 코어수에 비례하여 node intance 실행, cpu 자원 효율적으로 이용하고 서버 안정성 강화
- 빌드된 api 서버 이미지를 통해 서버 컨테이너 두개 실행하여 nginx로부터 오는 요청을 처리
- 유저의 프로젝트에 설치되어 에러 이벤트를 수집하고 api서버로 전송, mongodb에 에러 이벤트 저장
- npm에 배포
📈 퍼포먼스 모니터링 📉
- HOME
- 프로젝트 개요 및 요구사항
- 프로젝트 설계
- DB 설계
- 프로젝트 구조
- 기술 특장점
- 피드백 & 추후 과제
- docker-compose로 mongodb 설치
- sentry sdk에서 보내는 실제 json구조
- acent sdk 설치 방법
🤞 Rules 🤞
🗒 스프린트 계획 🗒
🙋♂️ 데일리 스크럼 🙋♀️
📚 회고 📚