
메시지 전송 트래픽 100배에도 끄떡 없는 User 테이블로 뜯어고치기 (2)
User 테이블의 Badge 트래픽 병목을 분리해 온라인 마이그레이션으로 이전했습니다. AWS 관리형 서비스를 활용해 비용과 시간을 크게 줄이고 안정성도 높였습니다.

User 테이블의 Badge 트래픽 병목을 분리해 온라인 마이그레이션으로 이전했습니다. AWS 관리형 서비스를 활용해 비용과 시간을 크게 줄이고 안정성도 높였습니다.

배포 직후 발생하던 DB Connection Timeout과 응답 지연의 원인을 분석했습니다. JVM 웜업과 startupProbe 적용으로 초기 지연 문제를 해결했습니다.

단일 Queue의 HOL Blocking과 인스턴스 단위 스케일링 비효율을 논리적 파티셔닝으로 개선했습니다. Partition별 독립 스케일링으로 10만 건 처리 시간을 25분에서 4분으로 줄였습니다.

단일 큐에서 발생하던 HOL Blocking을 논리적 파티셔닝으로 완화했습니다. Coordinator 기반 독립 스케일링으로 10만 건 처리 시간을 84% 줄였습니다.

벌크액션 트래픽에 대응하기 위해 PWQD를 핵심 메트릭으로 삼아 동적 스케일링을 설계했습니다. 연속 초과 시 확대하고 Time Decay로 축소해 Spike에도 안정적으로 대응했습니다.

벌크액션 트래픽의 지연과 오실레이션 문제를 해결하기 위해 동적 스케일링을 개선했습니다. PWQD와 Time Decay를 결합해 Spike에도 안정적으로 대응했습니다.
장애 심각도를 기술 지표가 아니라 사용자 경험과 비즈니스 영향으로 정의한 사례를 소개했습니다. CUJ와 CSP, SLI, SEV를 연결해 대시보드와 얼럿 운영까지 체계화했습니다.


Amazon OpenSearch Service의 백프레셔와 Admission Control로 검색 요청을 제어해 클러스터 복원력을 높이는 방법을 소개했습니다. 429 오류 대응, 모니터링 방법, 재시도 전략도 함께 설명했습니다.

레거시 알림톡 발송을 트랜잭션 커밋 이후 Kafka 기반 구조로 분리했습니다. 데이터 정합성과 확장성을 높이며 공통 발송 체계를 만들었습니다.

6년 동안 레거시 테이블과 코드 구조를 조금씩 개선하며 서비스를 멈추지 않는 방식을 정리했습니다. 또한 문서화와 ERD 정비로 장애 대응 지식의 병목을 줄였습니다.

MySQL 함수형 인덱스로 비트 연산 조건이 인덱스를 타도록 바꿔 슬로우 쿼리를 해결했습니다.운영 적용 과정에서는 복제 지연과 조건 의미 변경 문제를 점진적 롤아웃으로 검증했습니다.

전국 1,300개 매장 전자라벨 배치를 위해 Partitioning으로 락 경합을 제거하고 처리 시간을 크게 줄였습니다. 또한 Aurora Serverless v2로 트래픽에 맞게 자동 확장해 성능과 비용을 함께 개선했습니다.