-
Notifications
You must be signed in to change notification settings - Fork 1
서비스 서버와 DB 서버를 분리한 이유
Jeong Se Ho edited this page Dec 14, 2023
·
2 revisions
서비스 서버와 DB서버가 같은 클라우드 환경에 존재하면, DB에 물리적 용량이 차지하는 비중이 높기에 부하가 클 것이라 예상됨.
- DB서버와 서비스 서버 분리 (다른 클라우드 환경에서 실행)
DB서버와 서비스 서버를 분리하는 이유는 메모리 공간 관리 과정에서, db서버가 쉽게 종료될 수 있기 때문이다. 두 서버를 같이 운영하는 상황에서 많은 API 요청이 들어와 메모리 공간이 부족해지는 경우 OOM killer는 일반적인 상황에서 가장 많은 메모리 공간을 차지하는 DBMS 프로세스를 종료시킨다. 이로 인해 DB서버가 다운될 수 있기 때문에, 두 서버를 분리하였다.
서비스 서버에서 DB서버에 대한 연결 (SSH Tunnel을 통해 해결해야 함)
- DB 선택 과정
- TypeORM 선택 이유
- Docker 선택 이유
- Github Action 선택 이유
- DB서버와 서비스 서버를 분리한 이유
- 자동완성을 위한 Trie 구조를 제거하고, naver cloud search로 대체한 이유
- 11월 07일 (화) - 프로젝트 설명
- 11월 16일 (목) - 프로젝트 진행하면서 생긴 고민
- 11월 21일 (화) - 멘토분들 피드백
- 11월 28일 (화) - 트러블 슈팅 피드백
- 12월 05일 (화) - 기술적 도전에 대한 고민
- 12월 12일 (화) - 최종 발표 피드백