기존 기술 회고록(feat. 근거)

Why choose ALB ??

Load Test 전반적인 질문사항

Connection Timeout 과 Thread Pool Size 의 갯수 기준

Why JMeter (nGrinder, k6)

Offset Pagination vs Cursor Pagination

CQRS

CQRS 구현에 있어서 AWS에 너무 의존적이지 않은지??

CQRS 모델 분리를 왜 고려하지 않았는지?

CQRS 모델 분리?

CQRS :: Primary, Secondary 간 데이터 정합성 차이를 극복하려면?

과연 MHA의 Semi-Sync 를 활용하는 방법은 없는가? 꼭 AWS RDS 의 Async Sync 를 사용해야하는가?

동시성 이슈

비관적 락 vs 분산락

비관적 락 & @Retryable vs 비관적 락 & Retry 스레드풀 분리

분산서비스에 @Retryable 이 필요없다고 생각하는가?

쿠폰 전략

ENUM으로 관리되는 쿠폰에 유연한 기능추가가 가능하다고 생각하는가?

전략 패턴을 사용할 수는 없을까?

CI/CD

CD 시간이 20분인데 더 최소화할 수 있는 방법은 없다고 생각하는가?

디자인패턴

Provider 레이어의 결합도가 오히려 높다고 생각하지 않는가??

트래픽이 늘어나는 경우에 대한 대비책은?? (AWS에 의존적이지 않게 답변해보자)

Pub/Sub 구조로 여러 서버를 두게 하면 처리가 빠르지 않을까?@

왜 부분적으로 페이징 처리하였는지?

페이징 처리 해야하는 부분

CouponController
사용가능한 쿠폰 조회
사용완료한 쿠폰 조회
ProductLikeController
관심상품 조회 요청
ProductQueryController
상품 전체 조회 // [캐싱처리] // 무한스크롤
상품 상세 조회
상품 체결내역 조회
오히려 기간 조건값을 넣어야할 것 같음
판매 입찰가 조회
구매 입찰가 조회
UserBoughtHistroyController
구매자 구매완료내역 조회
구매자 진행 중인 구매입찰 조회
UserSellHistroyController
판매자 판매내역 조회
판매자 진행 중인 판매입찰 조회

현재 페이징 처리되는 부분

ProductLikeController
관심상품 조회 요청
ProductQueryController
판매 입찰가 조회
구매 입찰가 조회

현재 아키텍처에서 과도한 서버비를 줄이기 위한 대책은 무엇인지?

대대적인 실험이 필요할 것 같음
“이전 비용” VS “이후 비용” 을 비교해봐야,,,,
ELB → NginX
{ SSL 기능 + Auto Scailing } 만 쓰고 있어서 ELB의 전체 기능을 활용하지 못 함
하지만 과연 NginX 가 비용이 덜 나올까?
NginX 는 무료이지만, 기본 서버가 스케일업이 되어야함
스케일업의 비용 vs 스케일아웃의 비용 중 뭐가 비쌀까?
Blud / Green 배포전략이 기존의 서버 개수만큼 복제해야하므로 비용적으로 비싸지 않을까?
다른 방법이 뭐가 있음?
롤링이나 카나비에 대해서 장애가 발생할 확률이 있음
롤링 : ???
카나비 : ??
S3 에 대해서 불필요한 데이터 삭제와 이미지 리사이징을 통해 비용을 최소화할 수 있지 않을까?

Soft Delete

어떻게 Soft Delete 를 구현하였는가?

왜 ~ 기술을 사용했는지?

왜 Java 17을 사용하였는지

왜 Spring Boot 3을 사용하였는지

왜 JPA 3을 사용하였는지

왜 JMeter를 사용하였는지

왜 MapStruct을 사용하였는지

왜 Github Actions를 사용하였는지

왜 Mysql 8을 사용하였는지

왜 Redis 7을 사용하였는지

캐싱

CloudFront가 무엇이고 왜 CloudFront 를 사용했는지?

어떤 데이터를 캐싱 예정인지

어떤 캐싱 만료 정책을 사용했고, 근거는 무엇인가?

RDB 와의 동기화는 어떻게 처리하는가?

캐시 메모리는 얼마나 크게 잡을 것인가?

데이터 방출 정책은 무엇인가?

장애에 대해서는 어떻게 처리하는가?

읽기 전략 / 쓰기 전략은 무엇을 사용하는가?