Replies: 5 comments
-
전체 인프라 구조다이어그램기존 구조와의 변경점 및 이유
DB 서버 추가RDS 와의 비교비용이 싸고 더 많은 것을 설정할 수 있다는 장점이 있다. 손수 서버에 접속해서 여러 명령어를 사용하여 여러가지를 설정하게 될텐데, 이 과정에서 우리가 채택한 DBMS에 대해 많은 것을 알 수 있다. 개발 서버의 DB는 퍼블릭하게 열자이 부분은 기술지원 채널에서 문의를 해야 할 것 같다. 개발 서버라는 특성 상 편리하게 접근해 여러 작업을 할 수 있는 편리성 측면에서 퍼블릭 서브넷에 속하도록 설정하는 것이 좋을 것 같다는 생각이다. 운영 서버 추가개발 서버와 EC2 레벨에서 분리한 이유만약 개발 서버와 운영 서버가 같은 EC2를 사용하고 도커 등의 컨테이너 레벨이나 프로세스 레벨로 분리되어 있을 경우 인프라 비용을 낮출 수 있다는 장점이 있다. 반면, 개발 서버의 장애가 운영 서버의 장애로 번질 가능성이 있는 점이 단점이다. 운영 서버가 안정적일 수 있다면 인프라 비용도 생각보다 낮게 계산(우테코가 AWS 할인 플랜 적용을 받고 있다.)되기 때문에 추가적인 인프라 비용을 감내하는 것이 합리적이라 생각한다. 프롬테일 추가Nginx 로그 수집3차 데모데이 구구의 피드백에서 우리가 Nginx의 로그를 모니터링 대상에서 간과하고 있었다는 것을 알았다. 기본적으로 로그 파일이 EC2에 저장되는데, 이를 모니터링 시스템에서 확인할 수 있게 하려면 프롬테일을 이용해 로키로 전송하면 된다. 비록 또 다른 구성 요소가 추가된다는 점에서 관리 요소가 늘어나는 단점이 있지만 로그를 우테코 캠퍼스 외부에서 보려면 지금 시스템을 유지하면서 할 다른 방법이 없다. DBMS 선택결론Mysql 8.0 다른 후보군과 채택 이유
우리의 도메인 코드는 JPA에 의존적이며 전통적인 RDBMS가 강한 게시판 기반의 서비스다. 따라서 NoSql을 메인으로 사용할 이유가 없다. 따라서 이를 배제했다. 현재 가장 널리 사용되는 RDBMS 중에서 라이센스 문제가 없는 것을 꼽으면 Mysql, MariaDB, PostgreSQL 가 있다. 이들 모두 우리 서비스를 만드는데 필요한 기능들을 모두 제공한다. DBMS 를 선택할 때 다음 사항들을 고려해야 한다.
3, 4 번째 항목은 모두 2번째 항목과 연결되므로 따로 다루지 않는다. 그러나, 우리 서비스는 그리 복잡하지 않은 테이블 구조, 서비스 제공을 위해 복잡한 쿼리가 필요하지 않은 구조다. 현재 우리 서비스는 아직 첫번째 버전도 완성된게 아니기 때문에 우리 서비스에 최적화된 성능 분석을 할 수 없다. 또한, 복잡한 테이블 구조나 복잡한 쿼리가 존재하지 않다는 점이 명확하다. 따라서 현 시점에서 성능은 후순위로 고려되어야 한다. 우리의 학습 관점에서 생각했을 때 공부하기 쉬운 걸 고르는 것도 아주 중요하다. DBMS 랭킹을 다루는 사이트에서 현 시점 랭킹은 아래와 같다. 이 중 라이센스가 필요하거나 NoSql 을 제외하면 Mysql 과 PostgreSQL이 가장 점유율이 높다. 또한 MariaDB는 Mysql 에서 갈라져 나왔기 때문에 Mysql과 비슷하며, 달라서 문제가 생기는 부분은 그렇기에 검색하면 바로 자료가 나올 것이라 판단된다. 따라서, 모두 학습에는 문제가 없으며 굳이 꼽으라면 Mysql이 가장 쉽고 자료가 많다. 결국, 우리 서비스는 세 DBMS 중 아무거나 사용해도 당장 예상되는 문제가 없다. 이럴 경우 가장 자료가 많고 보편적인 것을 사용하는 것이 타당하다. 따라서 Mysql을 사용하는 것이 좋다고 생각하며 이 중 유명한 국내 도서가 있는 버전인 Mysql 8 을 사용하는 것이 가장 타당하다고 생각한다. |
Beta Was this translation helpful? Give feedback.
-
https://suave-bearskin-3ab.notion.site/DB-527fcc4b50304c5d9fe1b399de897a01?pvs=4 |
Beta Was this translation helpful? Give feedback.
-
도커 제안 이유
|
Beta Was this translation helpful? Give feedback.
-
https://alstn113.notion.site/08-12-d7928cafc4b345faa46499cec43752c9 |
Beta Was this translation helpful? Give feedback.
-
프로덕션, 개발 서버 + DB까지 인프라 구조도 관련 의견
어떤 DB 사용할지 의견
|
Beta Was this translation helpful? Give feedback.
-
논의가 필요한 내용
월요일에 같이 그릴 예정입니다!
코멘트 달아주세요!
관련 회의록
📝 회의록
Beta Was this translation helpful? Give feedback.
All reactions