diff --git a/scripts/parsers/openalex.py b/scripts/parsers/openalex.py index bd7c694..fb3169f 100644 --- a/scripts/parsers/openalex.py +++ b/scripts/parsers/openalex.py @@ -94,7 +94,13 @@ class OpenAlexParser(BaseParser): per_page = min(200, limit) total_fetched = 0 rate_limit_retries = 0 - MAX_RATE_LIMIT_RETRIES = 5 + # 5 попыток (60+120+240+480+960=1860с) превышали дефолтный + # consumer_timeout RabbitMQ (1800с) — брокер рвал канал до того, + # как таск успевал сдаться и заacke-иться, воркер падал и Docker + # перезапускал его, задача редоставлялась и весь цикл начинался + # заново с попытки 1 — бесконечный краш-луп. 4 попытки = 900с, + # запас с большим запасом. + MAX_RATE_LIMIT_RETRIES = 4 while total_fetched < limit: params: dict[str, Any] = {