본문 바로가기 메뉴 바로가기

zeroco2

프로필사진
  • 글쓰기
  • 관리
  • 태그
  • 방명록
  • RSS

zeroco2

검색하기 폼
  • Develop (55)
    • Marketing (1)
      • GA (1)
    • Frontend (0)
      • Javascript (0)
    • Backend (10)
      • Spring & Spring Boot (5)
      • Spring Batch (2)
      • Java (3)
    • Data (25)
      • Oracle (3)
      • ELK (6)
      • Kafka (3)
      • Clickhouse (1)
    • Infra (7)
      • Linux (1)
      • Docker & k8s (5)
      • aws (0)
    • 개발지식 (2)
    • 문제해결 (9)
    • 일상 (0)
  • 방명록

전체 글 (55)
대규모 고객 확장 이후 발송 배치 성능 장애, 이렇게 해결했다

TL;DR증상: 캠페인 발송이 10분+ 지속, 간헐적으로 40분 이상 지연. 고객 컴플레인 발생.원인:ClickHouse FINAL 남용 → 파티션 풀스캔 + 슬로우 쿼리 → 애플리케이션 스레드 고갈비즈니스 로직의 불필요한 PreCheck(N+1) 조회, Reader 페이징 오동작해결:ClickHouse에서 FINAL 제거·파티션 프루닝 유도타겟+회원정보를 한 번에 조인 조회, Reader를 “타겟 수 만큼만” 페이징결과: 최악 40m → 1m 20s, 10m+ 배치 0건, 대부분 ≤ 10s. 평균 5배 이상 개선배경고객사가 빠르게 늘며 안정적이던 발송 배치에 병목이 나타나기 시작했다. 다수 캠페인이 10분 이상 소요되었고, 간헐적으로 40분을 초과하는 타겟팅이 발생했다. 운영 안정성 저하로 고객사의 문..

문제해결 2025. 9. 4. 11:03
Thread 가 많아질때 왜그럴까?

- webhook문제가 간헐적으로 계~속 발생함- 모니터링 툴이 전무한 상황 일단 이걸 해결하고자함. - 특정시점에 발생하는 것을 확인함. - 간할적인 좀시상태도 생김보여지는 원인 - DB lock- Thread점유- CPU부하.. 로직을 잘모르니 시스템 메트릭을 분석해봐야함. 해결과정- Heap dump 분석, Thread 부하테스트 진행.. - Thread TIMED_WATING 발생이 대부분이므로 이부분을 중점적으로 확인. (lettuce-eventExecutorLoop... -> Redis문제자나?)1차 해결방법- 일단 간헐적으로 좀비상태가 되는 문제 해결책으로 문제생기면 server restart 방법을 채택 (근본적인 해결책은 아니지만)- 특정 시점 Thread Cnt가 기하 급수적으로 느는것..

문제해결 2024. 12. 31. 18:03
Kafka consumer 성능을 높여보자

연말 발송량이 많아지면서 발송처리 후 처리 작업을 위한 토픽의 컨슈머 랙이 40,000건 기준으로 6시간 이상 처리가 안되는 이슈가 생겨 처리가 필요해 보였음. 이 정도도 처리 못하는건 문제가 있다고 판단.해결 할 수 있는 방법이 몇 가지 있을듯?컨슈머 처리 속도를 높인다.1. 컨슈머 20개 토픽 20개 맞춰서 처리를 높인다. (확인해보니 토픽이 20개인데, 컨슈머는 3개인 상태로 동작하고 있음.)- 아예 토픽을 좀 더 늘리는 방법도 고려해볼 수 있을 것 같다. 하지만 컨슈머 3개인 상태로 동작하는게 큰 문제로 보여, 이 부분 부터 해결하고 고려하기로하자.2. 컨슈머의 비지니스 로직을 개선한다. (비지니스로직이 단건 씩 처리하도록 하는 부분이 많아 DB I/O가 부하가 많이 걸리도록 처리되고 있었음 ..

Data/Kafka 2024. 12. 31. 17:40
이전 1 2 3 4 ··· 19 다음
이전 다음

Blog is powered by Tistory / Designed by Tistory

티스토리툴바