멘토링
CD가 무엇이냐면 Continous Delivery
- Gradle 빌드, 이미지 만들기, 이미지 배포
보통 CI/CD 나눠서 표현하지 않고 CI/CD를 묶어서 말을 한다고 합니다.
CI/CD를 Github Actions으로 하고 있다고 표현하는게 맞다.
MSK 같은거는 되도록 사용하지 말자,
- 가상화 된 리눅스 서버위에 카프카를 띄우는걸 원한다.
- 완전 자동화된걸 사용하지 말자, OpenSearch, Redis(ElasticCache for Redis) 포함
단위테스트 후에 서비스 로직을 수정을 해야하는데 안했다.
그라파나
- TPS는 최소 단위가 1 이상이여야한다.
- 그라파나는 필요한 데이터만 확인하는것만 정리를 하는게 좋다.
프로듀서, 웹, 컨슈머
- 보안 정책이 다르기때문에 시큐리티는 따로 띄우는게 맞다. 달라질수 있는 여지가 있기 때문입니다.
- 현재는 작은 규모 이기에 굳이 나눌필요는 없다.
- 큰 규모 producer <-> member / web <-> member / consumer <-> member
SSE 연결을 할 때도 인증을 필요 할거야, SSE 끊을 때도 인증 된 요청을 받아 줄 거야가 목적인가요?
- 콜백에 쿠키를 실어서 요청 할 필요가 없다고 생각을 한다.
- 내부에 서비스 로직이 있을거아닌가?
SSE 오류에 대한 예외처리는 현재 문제가 될 것 같진 않다.
- 만약에 SSE 연결 하는거 자체도 인증이 필요 할 것 같다. (되어있어서 괜찮을 듯?)
시나리오 구상 설계
-
ASG, 테스트 시나리오 작성 우선 순위 구분.
-
예매 테이블(ElasticSearch), 티켓 테이블(MySQL) 두 곳 다 1000만건을 넣을 건지?
- 대용량 데이터 1000만건을 1초 미만으로 조회하는게 목표, 안되면 튜닝을 계속하면서 개선 사항 비교.
- 1000만건 어떻게 넣을 지?
- 예매 테이블 1000만건 : 좌석에 대한 데이터 1000만개 ex) 100만석 좌석이 있는 홀에서 이벤트시간이 10번있다 → 1000만개
1000만개의 데이터가 있는데 사용자가 예매하기를 눌렀을 때 좌석리스트를 받아오는데 얼마나 걸리는가? - 티켓 테이블 1000만건 : 사용자들의 예매 내역이 1000만개 → 내 티켓 조회할 때 걸리는 시간 : 1000만개중에 내 티켓을 조회하는데 얼마나 걸리는가?
-
결과를 작성 할 때는 Grafana하고 Jmeter Report로 보여주면 될 지?
-
락 테스트? 동시성? + 락 획득한 사람만 구매 가능.
- 랜덤 좌석을 무작위로 남은좌석에 계속 신청.
-
대기열 보여주기
- 카프카를 사용해서 했다…
-
리프레쉬 토큰
- 규모가 커졌을 때 어떻게 대처 할 지 저희의 예시를 나열
- 만약에 저희 서비스가 500만명, 1000만명 말도안되게 급성장 중 일 때 이렇게 해서 스케일 아웃을 할 것 같습니다.
'항해99' 카테고리의 다른 글
항해99 실전 프로젝트 (30일차) (0) | 2024.03.05 |
---|---|
항해99 실전 프로젝트 (29일차) (0) | 2024.03.04 |
항해99 실전 프로젝트 (27일차) (0) | 2024.03.01 |
항해99 실전 프로젝트 (26일차) (0) | 2024.02.28 |
항해99 실전 프로젝트 (25일차) (0) | 2024.02.27 |