Превышен предел скорости в Календаре Google
Мы используем экземпляры Google Cloud (AppEngine) для синхронизации данных наших пользователей с их Google Calendars (через Calendar API). По сути, мы предоставляем решение для управления задачами, и задачи должны быть синхронизированы (однонаправлено) с календарями, к которым они (пользователи) предоставляют нам доступ.
Как все это работает: 1. Мы просим пользователей предоставить доступ к своей учетной записи Google. 2. Мы просим их выбрать нужный календарь или предложить возможность создания нового под своей учетной записью. 3. Нажимаем вставки / обновления / удаления через API.
Конкретной ошибкой, которую мы не понимаем, является 403 "Превышен предел скорости", который мы получили 190 раз за последние 30 дней из общего количества 84 773 запросов.
"error": {
"errors": [
{
"domain": "usageLimits",
"reason": "rateLimitExceeded",
"message": "Rate Limit Exceeded"
}
],
"code": 403,
"message": "Rate Limit Exceeded"
}
}
Причина, по которой мы не понимаем, заключается в том, что максимальное количество запросов / дней, которые мы сделали, составляет около 8K. Максимальный дневной лимит, установленный в настройках API Google Cloud, составляет 1 миллион.
Есть ли другие ограничения, о которых нам нужно знать? Если нет, что может быть причиной проблемы? Кто-нибудь сталкивался с подобным сценарием?
Спасибо!
1 ответ
Ошибка ограничения скорости не совпадает с ошибкой ограничения ежедневного использования. Ограничение скорости является безопасным пределом, чтобы гарантировать, что мы не засыпаем запросами в течение короткого периода времени.
Вы можете использовать алгоритмы экспоненциальной отсрочки отката, чтобы ограничение скорости не остановило ваше приложение в воде (вместо этого оно просто замедляет его).
У нас была та же проблема без логической причины, и мы решили ее, используя пакетный режим.