Run an import 사용할 때 409, 429 에러가 발생하는 데 원인이 무엇이고 어떻게 해야해?
Hi Hyun L., Please stand by as I search the Mixpanel knowledge base for an AI-powered answer. I normally take about 15 seconds or so. In case AI cannot answer your question, feel free to reach out to Mixpanel support at mixpanel.com/get-support. If you have follow-up questions for this thread, please tag me again with your question: @kapa.ai <follow-up question> 👋
Feel free to ask a follow-up question once I've answered by mentioning me with @kapa.ai
Mixpanel API를 사용하여 데이터를 가져올 때 발생하는 409와 429 오류에 대해 설명해 드리겠습니다.
429 오류 (Too Many Requests)
429 오류는 API 속도 제한을 초과했을 때 발생합니다. Mixpanel은 시스템 무결성을 보장하고 단일 프로젝트가 다른 프로젝트의 리소스를 독점하는 것을 방지하기 위해 속도 제한을 적용합니다.
속도 제한 정보:
- Ingestion API: 분당 2GB의 압축되지 않은 JSON 또는 초당 약 30,000개의 이벤트 (1분 단위로 측정) - Mixpanel APIs: Rate Limits
해결 방법:
Mixpanel은 대규모 데이터 전송 시 다음과 같은 방법을 권장합니다: 1. 서버가 429를 반환할 때까지 동시 클라이언트로 데이터를 최대한 빠르게 전송하세요. 배치당 2,000개의 이벤트를 보내는 10-20개의 동시 클라이언트가 가장 좋은 결과를 보입니다.
2. 429 오류가 발생하면 지터(jitter)가 있는 지수 백오프(exponential backoff) 전략을 사용하세요. 2초부터 시작하여 최대 60초까지 백오프를 두 배로 늘리고, 1-5초의 지터를 추가하는 것이 좋습니다.
3. 네트워크 이그레스와 전송 시간을 줄이기 위해 gzip 압축과 Content-Encoding: gzip
을 사용하세요.
4. 드물게 API가 502나 503 상태 코드를 반환하는 경우, 429와 동일한 지수 백오프 전략을 사용하세요.
5. 유효성 검사 오류(400 상태 코드)는 재시도하지 마세요. 계속 실패하고 속도 제한에 포함됩니다.Ingestion API - Events: Import Events
409 오류
제공된 문서에는 409 오류에 대한 구체적인 정보가 없습니다. 일반적으로 409 오류는 충돌(Conflict)을 나타내며, 요청이 서버의 현재 상태와 충돌할 때 발생합니다. Mixpanel의 경우 이는 중복된 데이터 삽입 시도나 동시 작업 충돌과 관련될 수 있습니다.더 자세한 정보를 원하시면 Mixpanel 지원팀에 문의하시는 것이 좋습니다.
일반적인 권장 사항
데이터 가져오기 시 다음 사항을 고려하세요:
- 모든 이벤트에 $insert_id
가 필요합니다. 이는 /import
요청을 안전하게 재시도할 수 있게 합니다.
- 대규모 데이터 전송 시 요청을 더 작은 배치로 나누세요.
- 엔터프라이즈 고객이고 일회성 백필(backfill)을 위해 더 높은 한도가 필요한 경우, 프로젝트 ID와 사용 사례를 포함하여 영업 담당자에게 문의하세요.
kapa.ai is still learning and improving, please let me know how I did by reacting below.
ℹ️ Tip: Mention @kapa.ai in the thread for follow-ups or DM the app for 1-to-1 help.
Let me check the knowledge base for you again. One moment! 📚