발표 / 영상 시나리오
— 기획 — @지훈
•
도메인 설명
•
시나리오 **
•
ERD **
•
역할분담
•
컨벤션
— MVP 주요 작업물 — @규빈
•
API 구현물
◦
Swagger
•
대도서관
•
멘토링
•
회의록
— 기술적 의사 결정 — @규정
•
아키텍처 구조도 **
◦
1차안에서 제거 및 변경한 부분들에 대해서
왜 ?? 했는지 설명
▪
RabbitMQ :: RDS 를 통한 Master/Slave 관리
•
굳이 RabbitMQ 사용할 이유를 찾기가 어려웠음
•
초기 RabbitMQ 사용목적이 Master/Slave 간의 동기화 처리
•
RDS 를 사용하므로서 EC2와의 MySQL 사용성을 높이고, RDS에서의 Master/Slave 관리를 통해 기술적 오버헤드를 낮출 수 있다고 판단
•
이를 통해 서비스 성능개선에 집중할 수 있다고 판단
▪
NginX
•
NginX 와 AWS 중 굳이 NginX를 사용해야할 이유를 찾지 못 함
◦
AWS ELB 를 사용하면 이점이 많음
◦
NginX보다 AWS로 구현하는게 작업의 효율이 좋다
◦
Auto Scaling Group 에 대한 자동설정으로 트래픽 증감에 따라 인스턴스를 자동으로 늘려주는 기능을 활용
▪
Route 53
•
▪
Cloud Front
•
•
(재윤)
◦
CloudFront는 CDN 서비스이다. CDN은 정적 콘텐츠를 지리적으로 분산시켜 캐싱해둠으로써, 사용자가 가장 가까운 캐싱 서버로 접근할 수 있어서 데이터를 가져오는 속도를 향상시킬 수 있다. 그래서 index.html 및 JS파일과, 상품 이미지를 캐싱해두어서 초기 로딩속도를 향샹시킬 수 있을 것이라 판단했다.
•
그렇다면 서비스에서 개선하려고 한 부분들이 뭔데??
◦
설계구조 Provider
◦
Batch
◦
ERD 연관관계 줄이려고 노력했음
▪
엔티티 간의 의존관계를 최대한 덜어내려고 함
— 추후 개선사항 / 기능사항 — @규빈
•
개선사항
◦
동시성 이슈 여부 확인 후 서비스 코드 개선
◦
스케줄링 인스턴스 분리
◦
JMeter 테스트
▪
EC2 에 시나리오 테스트
•
트래픽 처리에 대한 성능테스트
▪
ELB 에 시나리오 테스트
•
오토스케일링 처리에 대한 성능테스트
◦
S3 이미지 업로드 성능개선
◦
Actuator(스프링 헬스체크) + Micrometer(지표수집) + Grafana(시각화)
◦
RDS에서의 CQRS 처
◦
블루 / 그린 배포 중 진행 중인 서비스에 대해서 검증 테스트
◦
상품 관련 데이터 REDIS 캐싱처리
◦
검증 위치에 따른 성능 비교 테스트
◦
jacoco 테스트 커버리지에 따라 CI 제한사항
•
추가 기능사항
◦
기능 추가 여부 회의
◦
고객센터 백오피스
▪
채팅
◦
상품 백오피스
▪
상품 등록 및 이미지 업로드
◦
쿠폰 백오피스
▪
쿠폰 등록
◦
주문상태 종류 추가
▪
기프티콘 검증 중
◦
결제 모듈
◦
실시간 데이터 처리 SSE
◦
검색 시, 검색어 자동완료
— 질의응답 — @재윤
•
재윤님 픽 !
발표 및 영상 고민들
•
발표할 때 구현한 기능들 vs Front를 통해 기능시현
•
Swagger API <-> Front API 핸들링
◦
재윤님이 어떻게 풀어실까 << 재윤님 역량
•
2분 : 기획 (나아가고자 하는 방향성의 아키텍처 그림)
•
1분 : MVP 주요 작업물
•
2분 30초 : 기술적 의사 결정 1,2개
•
1분 30초 : 추후 개발 및 기술적인 도전 계획
•
3분 : 튜터님 질문 10문제 중 2가지 선정하여 답변 진행