✒️ AI Topic 생성 시스템
— Embedding Rate Limit 폭발부터 비동기 처리까지

관리자용

실제 서비스

오늘의 질문
관리자 페이지에서 생성된 주제는 검수와 승인을 거쳐 발행 대기 상태가 된다. 승인된 주제는 관리자가 특정 날짜에 직접 지정하거나, 지정되지 않은 경우 매일 자정에 랜덤으로 선택하여 ‘**오늘의 글쓰기 주제’**로 노출되는 구조이다. 이걸 만들면서 트러블이 있던 부분을 정리 해보겠습니다
+) 조회할 떄 N+1문제
1.시스템 배경
[질문 생성하기] 버튼을 누르면 다음 작업이 한 번의 요청 안에서 모두 수행되는 구조였다.
- AI로 카테고리 별 주제(topic) 30개씩 생성
- 각 topic에 대해 Embedding 생성
- 기존 topic과 cosine similarity로 중복 제거
- 중복 제거된 topic만 DB 저장
이 구조에서 다음과 같은 문제들이 발생했다.
- Embedding API 429 Too Many Requests
- 관리자 요청 타임 아웃 위험
- 일부 실패가 발생해도 성공처럼 보이는 문제
- PM/다른 팀원이 어디서 문제가 발생했는지 파악하기 어려움
🔴 문제 1 ) embedding api 429 폭발