오늘부터 최종 프로젝트가 시작됐다.
팀장은 내심 내가 하고 싶었지만 그래도 하고 싶은 분들이 있을까봐 아무도 안 하면 제가 할거니 부담없이 말해달라고 했고, 내가 팀장이 되었다.
이제 부팀장을 정해야 했는데, 팀장/부팀장의 역할 중 하나로 튜터님, 매니저님과 팀원 사이를 이어주는 부분도 있다고 했고, ㅈㅎ님이 평소에 튜터님을 열심히 괴롭?히는 모습을 종종 보았기 때문에 ㅋㅋ 내가 직접 선정을 했다.
많은 아이디어들이 나왔지만, 결국 챌린지반의 존재 이유였던 대용량 트래픽 처리에 집중하고자 비즈니스 부분은 과감히 덜어냈다.
우리 팀은 크림의 기프티콘 버전을 만들어 보기로 했다. 처음부터 크림을 염두에 둔 것은 아니고 아이디어를 내고 피봇팅 하는 과정의 결과물이 크림이었다 ㅋ ㅋ
원래 중고 물품을 다수의 구매자와 다수의 판매자가 서로 가격 경쟁을 하도록 하려고 했는데, 중고 물품 마다의 퀄리티가 다 다른 문제가 있었고, 이를 어떻게 구현할까 고민하다가 중고이면서 데이터 쪼가리라서 물품 간의 퀄리티 차이가 없는 기프티콘을 하기로 했다.
근데 이거 ERD 설계가 굉장히 어렵다 ㅋ ㅋ
열심히 의논해서 만든거 튜터님 찾아가서 여쭤보니 엔티티 우선으로 설계하기보다 시나리오부터 도출하고 설계해보는 것을 추천받았다. 원래 이게 맞는데, 너무 비즈니스 부분의 힘을 빼려고 한 나머지 놓치고 있었던 것 같다.
그리고 비즈니스 부분을 간소화하여 아낀 자원을 아키텍처에 투자하기로 했다.
구상해본 아키텍처는 위와 같다.
깃허브에 올리면 Ci&CD로 도커로 올라가고, 여러 인스턴스로 띄워두어서 엔진엑스로 로드밸런싱도 한다. 또 MySQL이랑 Redis는 Master-Slave로 해두었고, MySQL은 RabbitMQ로 CQRS를 구현해볼 생각이다.
나는 우선 레디스와 엔진엑스를 해보고 싶긴 한데, 그래도 원하는 거를 하기 위해선.. 프론트를 담당할까 생각중이다.
대충 업무를 나눠보면 아래와 같지 않을까 하는데, 1번은 그냥 희망사항이라 넣어봤다 ㅋ
1. 프론트-레디스-엔진엑스
2. 비즈니스 로직 구현 및 인증 인가
3. CI&CD 및 도커 + 배포
4. MySQL(마스터-슬레이브)-CQRS(+MQ)
ERD는 위와 같은데, 우리 팀의 ㄱㅂ님이 역시 경력 짬이 있으셔서 그런지 미쳐 생각 못한 케이스를 잘 고려하고 알려주시고 있긴 하다. 튜터님 피드백으로 손보긴 해야겠지만 ㅠ.ㅠ
마지막으로 와이어프레임을 만들었다.
화면 많은 것 같아도 구매부분과 판매부분은 텍스트만 다르다 ㅋㅋ
중간발표가 18일 남았던데 앞으로 잘 해보자구.
'TIL ✍️' 카테고리의 다른 글
24년 1월 8일(월요일) - 66번째 TIL (2) | 2024.01.09 |
---|---|
24년 1월 5일(금요일) - 65번째 TIL (3) | 2024.01.05 |
24년 1월 3일(수요일) - 63번째 TIL (0) | 2024.01.04 |
24년 1월 2일(화요일) - 62번째 TIL (1) | 2024.01.03 |
23년 12월 28일(목요일) - 61번째 TIL (1) | 2023.12.28 |