[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"glossary-rate-limiting::ru":3,"gloss-cluster-rate-limiting::ru":20,"gloss-next-rate-limiting::ru":9},{"slug":4,"category":5,"name":6,"definition":7,"meta_desc":8,"faq":9,"schema_markup":9,"related":10},"rate-limiting","dev-tools","Ограничение частоты запросов (Rate Limiting)","Rate limiting — это техника контроля того, сколько запросов клиент (пользователь, API-ключ или IP-адрес) может сделать к системе в заданное временное окно — например, «100 запросов в минуту», — с отклонением или задержкой запросов сверх этого лимита, обычно с HTTP-ответом `429 Too Many Requests`. Он служит двум связанным, но разным целям: защите инфраструктуры от перегрузки (будь то из-за реального всплеска трафика или бага, заставляющего клиента долбить эндпоинт в цикле повторов) и обеспечению бизнес-\u002Fтарифных уровней (API-ключ бесплатного тарифа может быть ограничен 60 запросами в минуту, а платный тариф получает 6000). Почему это важно для AI\u002FSaaS-разработчиков: rate limiting необходим везде, где API стоит за измеряемой стоимостью — это особенно верно для AI-эндпоинтов, поскольку один вызов LLM API может стоить заметно дороже по вычислениям, чем типичное чтение из базы данных, так что эндпоинт без ограничения частоты запросов — это прямой, неограниченный риск затрат, если клиент (или баг, или злоумышленник) вызывает его в тесном цикле. Это также стандартная практика для API, обращённых к сторонним разработчикам в целом, — как для предотвращения злоупотреблений, так и для создания естественной тарификации (лимиты частоты запросов — один из самых простых и распространённых способов отличить бесплатный план от платного). Как это работает: среди распространённых алгоритмов — token bucket («ведро токенов»: у каждого клиента есть ведро, пополняемое с фиксированной скоростью — скажем, один токен в секунду, максимум до 60, — и каждый запрос расходует один токен, позволяя всплески до размера ведра при этом обеспечивая устойчивую среднюю скорость) и sliding window («скользящее окно»: подсчёт запросов в перемещающемся временном окне, более точный, чем простой подсчёт по фиксированному окну, который может допустить всплеск прямо на границе окна). Ограничитель частоты запросов отслеживает использование по каждому клиенту (обычно с ключом по API-ключу или ID аутентифицированного пользователя, хранится в быстром хранилище в памяти вроде Redis, чтобы проверка добавляла минимальную задержку) и отклоняет запросы, превышающие настроенный лимит, часто включая заголовки `X-RateLimit-Remaining` и `Retry-After`, чтобы корректно ведущие себя клиенты могли плавно снижать частоту запросов. Разбор примера: API суммаризации документов на базе AI у одной SaaS-компании реально стоит им денег за каждый вызов к базовой LLM. Они настраивают лимит частоты запросов на своём API-шлюзе: API-ключи бесплатного тарифа ограничены 10 запросами в минуту, ключи платного тарифа — 500 в минуту, отслеживается через token bucket на базе Redis для каждого API-ключа. Когда в интеграции клиента бесплатного тарифа возникает баг, вызывающий повтор неудавшегося запроса в тесном цикле, ограничитель частоты запросов перехватывает это после 10-го запроса в течение минуты, возвращая `429 Too Many Requests` с заголовком `Retry-After: 45` вместо того, чтобы позволить багованному циклу накопить сотни дорогостоящих вызовов AI API — это защищает маржу компании и даёт клиентскому коду чёткий, машиночитаемый сигнал о том, когда именно нужно повторить попытку.","Rate limiting ограничивает число запросов клиента к API за заданное окно времени, защищая систему от перегрузки и злоупотреблений.",null,[11,14,17],{"slug":12,"name":13},"api-gateway","API-шлюз (API Gateway)",{"slug":15,"name":16},"observability","Наблюдаемость (Observability)",{"slug":18,"name":19},"sdk","Набор средств разработки (SDK)",[21,25,28,30,33,36,39,42,45,48,51,54],{"slug":22,"category":5,"name":23,"updated_at":24},"agent","Агент (Agent)","2026-08-24T02:46:36+00:00",{"slug":26,"category":5,"name":27,"updated_at":24},"ai-code-assistant","AI-помощник по написанию кода",{"slug":12,"category":5,"name":13,"updated_at":29},"2026-08-24T02:46:37+00:00",{"slug":31,"category":5,"name":32,"updated_at":29},"api-versioning","API Versioning (версионирование API)",{"slug":34,"category":5,"name":35,"updated_at":24},"autonomous-agent","Автономный агент (Autonomous Agent)",{"slug":37,"category":5,"name":38,"updated_at":29},"blue-green-deployment","Blue-Green Deployment (сине-зелёное развёртывание)",{"slug":40,"category":5,"name":41,"updated_at":29},"canary-deployment","Canary Deployment (канареечное развёртывание)",{"slug":43,"category":5,"name":44,"updated_at":29},"chaos-engineering","Chaos Engineering (хаос-инжиниринг)",{"slug":46,"category":5,"name":47,"updated_at":24},"ci-cd","Непрерывная интеграция \u002F непрерывное развёртывание (CI\u002FCD)",{"slug":49,"category":5,"name":50,"updated_at":29},"circuit-breaker","Предохранитель (Circuit Breaker)",{"slug":52,"category":5,"name":53,"updated_at":29},"cli","Интерфейс командной строки (CLI)",{"slug":55,"category":5,"name":56,"updated_at":29},"cloud-development-environment","Облачная среда разработки (CDE)"]