Flask, PostgreSQL 서버를 띄우고 연동한 후, DockerFile 작성 및 docker-compose로 그룹화했다.
디렉터리 구조

이번 프로젝트는 MSA 아키텍처 및 백엔드 고급 기술들의 성능 측정이 목표이기 때문에, OOP 원칙을 철저히 준수한다거나 프로젝트 구조를 짠다거나 하는 건 전부 패스했다. 사실 코드가 그렇게 많지도 않을 것이다. 프로젝트가 마무리 되면, 디렉터리 구조를 조금 정리하려고 한다.
flask-gateway는 플라스크 서버가 저장되는데, 이름 그대로 클라이언트의 요청을 직접 받는 gateway 역할을 수행할 것이다. go-core엔 Go(Gin) 서버가 담길 것이고 이름 그대로 core engine 역할을 맡아 성능 병목이 예상되는 복잡한 연산을 맡을 것이다.
docker-compose

Flask, PostgreSQL은 모두 컨테이너화 했으며, docker-compose로 그룹화해 한번에 관리할 수 있도록 구성했다. Dockerfile, docker-compose 모두 처음부터 직접 짜보는 건 처음인데 그렇게 복잡하진 않은 것 같다. 도커 매우 편리하다.
route.py

라우터도 정말 소소하게 구성했다. GET /users를 curl 명령어로 호출해 미리 넣어둔 데이터가 응답되는지를 확인했다.
가동 중인 컨테이너(2개)

위가 flask, 아래가 postgreSQL 이다. docker-compose up/down으로 문제없이 올라가고 내려간다.
==========
msa-perf-lab 깃허브:
https://github.com/YangSunkue/msa-perf-lab
=====
오늘은 개발환경 세팅을 진행해 보았다. 여기까지는 익숙한 작업들이기에 금방금방 했지만, 내일부터 할 Go(Gin) 및 gRPC는 언어도 처음, 프레임워크도 처음, gRPC도 처음이다. 내일부터 조금 힘들어질 것 같지만, Go를 빨리 써보고 싶어서 설레는 부분도 있다.
개인 프로젝트 "썬카"를 진행할 때도 그랬듯, 블로그에 프로젝트 과정을 그때그때 기록해 놓고 프로젝트가 마무리되면 포트폴리오로 옮길 예정이다. 현재 포트폴리오는 약간 장황한 느낌이 있어서, 핵심적인 것들 위주로 간결하게 수정해 보려고 한다.
'Development > [msa-perf-lab] Flask & Go MSA 성능 실험 프로젝트' 카테고리의 다른 글
| [msa-perf-lab] MSA 성능 실험 프로젝트 - Flask & Go(Gin) (0) | 2025.10.31 | 
|---|