속도 제한 및 자동 재시도
2sync가 Notion, Google, Microsoft의 API 속도 제한을 처리하는 방법
2sync는 매 동기화 주기마다 외부 API(Notion, Google, Microsoft, Todoist)와 통신합니다. 이러한 API는 과부하를 방지하기 위해 속도 제한을 시행합니다. 2sync는 재시도와 백오프를 통해 속도 제한을 자동으로 처리하므로 수동 개입 없이 데이터가 안정적으로 동기화됩니다.
속도 제한이란 무엇인가요?
속도 제한은 API 제공업체가 지정된 시간 내에 앱이 수행할 수 있는 요청 수에 대해 설정한 제한입니다. 2sync가 속도 제한에 도달하면 API가 제한이 초기화될 때까지 추가 요청을 일시적으로 거부합니다.
각 제공업체의 제한은 다릅니다:
| 제공업체 | 동작 |
|---|---|
| Notion | 연동당 초당 요청 수 제한 |
| 캘린더, 태스크, 주소록, Gmail 전반에 걸쳐 사용자별 할당량 제한 | |
| Microsoft | Outlook 서비스 전반에 걸쳐 앱별 및 사용자별 제한 |
| Todoist | 분당 사용자별 요청 수 제한 |
2sync는 속도 제한을 어떻게 처리하나요?
2sync는 모든 재시도에 지수 백오프를 사용합니다. 속도 제한에 도달하면:
- 해당 API에 대한 동기화가 일시정지됩니다
- 2sync가 점점 늘어나는 간격으로 대기합니다 (1초, 2초, 4초, 8초 등)
- API가 요청을 다시 수락할 때까지 재시도가 계속됩니다
- 일시정지된 지점에서 동기화가 재개됩니다
이 전체 프로세스는 투명합니다. 아무것도 클릭하거나 자동화를 재시작할 필요가 없습니다.
속도 제한은 오류가 아닙니다. 대용량 작업 중의 정상적인 API 동작입니다. 2sync는 이러한 제한 내에서 자동으로 작동하도록 설계되었습니다.
속도 제한의 트리거는 무엇인가요?
속도 제한은 다음 상황에서 더 발생하기 쉽습니다:
- 대규모 데이터베이스의 초기 동기화 (수백 또는 수천 개의 항목)
- 많은 항목에 한 번에 적용된 대량 변경
- 같은 제공업체를 동시에 동기화하는 복수 자동화
- 같은 API 할당량을 사용하는 다른 앱
일괄 처리는 어떻게 도움이 되나요?
대규모 동기화 작업의 경우, 2sync는 항목당 하나의 요청 대신 변경 사항을 배치로 그룹화합니다. 이는 전체 API 호출 수를 줄이고 속도 제한 내에서 더 효과적으로 작업을 유지합니다.
배치 크기는 제공업체와 현재 속도 제한 상태에 따라 동적으로 조정됩니다.
대용량 동기화 중 예상되는 사항은?
초기 설정 또는 오랜 일시정지 후에 2sync가 수천 개의 항목을 처리해야 할 수 있습니다. 이러한 경우:
- 동기화 시간이 평소 주기보다 길어질 수 있습니다
- 자동화 상태가 동기화 중으로 연장된 기간 동안 표시됩니다
- 모든 항목이 결국 동기화됩니다; 수동 개입은 필요 없습니다
자동화에 "속도 제한" 오류가 표시되면 API 제한으로 인해 현재 동기화 주기가 일시정지되었다는 의미입니다. 다음 예정된 동기화는 정상적으로 진행됩니다. 데이터 손실은 없습니다.
속도 제한 영향을 줄이려면 어떻게 하나요?
시간 범위를 좁히세요: 6개월의 이벤트를 동기화하는 것이 2년보다 적은 API 호출을 필요로 합니다.
필터를 사용하세요: 필요하지 않은 항목을 제외하세요. 동기화 항목이 적을수록 주기당 API 요청이 줄어듭니다.
자동화를 분산하세요: 같은 제공업체에 대해 복수 자동화를 실행하는 경우 약간 다른 동기화 시간을 고려하여 부하를 분산하세요.
동기화 직전에 대량 변경을 피하세요: 수백 개의 항목을 수정한 경우 하나의 동기화 주기가 완료된 후 추가 변경을 하세요.
처음으로 대규모 동기화를 활성화하기 전에 드라이 런을 실행하여 변경 수를 예측하세요. 이렇게 하면 초기 동기화에 얼마나 걸리고 속도 제한이 요인이 될지 예상하는 데 도움이 됩니다. 자세한 내용은 고급 동기화 설정을 참조하세요.
관련 문서
- 오류 코드: 속도 제한 및 기타 오류 상태 해결
- 고급 동기화 설정: 배치 동작 및 동기화 타이밍 제어
- 동기화 문제: 느리거나 멈춘 동기화 문제 해결
- 플랜 및 가격: 플랜별 동기화 빈도 차이
FAQ
2sync가 속도 제한에 도달하면 무엇을 해야 하나요?
아무것도 할 필요가 없습니다. 2sync는 지수 백오프를 사용하여 속도 제한을 자동으로 처리합니다. 동기화가 잠시 일시정지되고 API가 허용하면 재개됩니다. 수동 조치는 필요 없습니다.
속도 제한이 데이터 손실을 유발하나요?
아닙니다. 속도 제한은 동기화를 일시적으로 느리게 할 뿐입니다. 모든 보류 중인 변경은 대기열에 넣어지고 제한이 초기화되면 처리됩니다. 건너뛰거나 손실되는 것은 없습니다.
첫 동기화가 왜 이렇게 오래 걸리나요?
초기 동기화는 구성된 시간 범위 내의 전체 데이터베이스를 처리합니다. 수천 개의 API 호출이 필요할 수 있으며, 속도 제한에 도달하면 여러 재시도 주기가 필요합니다. 이후 동기화는 변경 사항만 처리하므로 훨씬 빠릅니다.
API 속도 제한을 늘릴 수 있나요?
속도 제한은 2sync가 아닌 API 제공업체(Google, Microsoft, Notion)가 설정합니다. 2sync는 이러한 제한 내에서 작동하고 요청을 최적화하여 영향을 최소화합니다. 이를 증가시키는 설정은 없습니다.
Notion 속도 제한 문제가 있습니다. 어떻게 해야 하나요?
Notion 속도 제한은 데이터베이스 크기에 따라 달라집니다. 제한에 자주 도달하면 동기화 시간 범위를 좁히거나 필터를 추가하여 동기화 항목 수를 줄이세요. 대부분의 동기화는 자동 재시도 후 성공하지만, 매우 큰 데이터베이스의 지속적인 문제는 데이터를 여러 데이터베이스로 분할해야 할 수 있습니다.