Профиль навыка

Rate Limiting и Throttling

Token bucket, sliding window, distributed rate limiting, quotas, backpressure

API и интеграции Управление API

Ролей

11

где встречается этот навык

Грейдов

5

сформированная дорожка роста

Обязательных требований

35

ещё 20 — необязательные

Домен

API и интеграции

Группа

Управление API

Последнее обновление

17.03.2026

Как использовать

Выберите текущий грейд и сравните ожидания. Карточки ниже покажут, что нужно закрыть для следующего уровня.

Чего ждут на каждом уровне

Таблица показывает, как меняется глубина владения навыком от Junior до Principal.

Роль Обязательность Описание
Application Security Engineer Понимает основы rate limiting с точки зрения безопасности: алгоритмы token bucket и sliding window, HTTP 429 ответы и заголовки retry-after. Следует командным паттернам для тестирования конфигураций rate limiting и выявления уязвимостей обхода.
Backend Developer (C#/.NET) Понимает rate limiting в .NET: знает встроенный RateLimiter middleware в ASP.NET Core 7+, умеет настроить fixed window и sliding window ограничения. Понимает основные паттерны: per-IP, per-user, per-endpoint.
Backend Developer (Elixir) Понимает rate limiting в Elixir: знает Hammer library для rate limiting, умеет применить plug для ограничения запросов в Phoenix. Понимает как ETS-based rate limiting работает в BEAM контексте.
Backend Developer (Go) Обязателен Понимает основы rate limiting в Go: token bucket через golang.org/x/time/rate, throttling на основе middleware в Gin/Chi и базовое ограничение по IP. Следует командным паттернам для реализации rate limiter'ов с распределёнными счётчиками на Redis.
Backend Developer (Java/Kotlin) Понимает rate limiting в Java-экосистеме: знает Bucket4j для token bucket, умеет применить Spring Cloud Gateway rate limiter. Понимает основные алгоритмы: fixed window, sliding window, token bucket и их trade-offs.
Backend Developer (Node.js) Понимает rate limiting в Node.js: знает express-rate-limit middleware, умеет настроить базовое ограничение запросов. Понимает разницу между in-memory и Redis-based rate limiting и зачем нужен distributed вариант.
Backend Developer (PHP) Понимает rate limiting в PHP: знает Laravel RateLimiter middleware, умеет применить throttle middleware к route groups. Понимает зачем ограничивать запросы для защиты от brute force и API abuse.
Backend Developer (Python) Понимает зачем нужен rate limiting: защита от DDoS, предотвращение злоупотреблений API, fair usage. Знает что такое HTTP 429 статус, заголовки X-RateLimit-Limit/Remaining/Reset. Умеет использовать готовые middleware (django-ratelimit, slowapi).
Backend Developer (Rust) Понимает rate limiting в Rust: знает tower::limit::RateLimit для tower-based сервисов, умеет применить middleware через tower layer. Понимает как Rust ownership model помогает в thread-safe rate limiting без data races.
Backend Developer (Scala) Понимает rate limiting в Scala: знает Akka HTTP throttle directive, понимает как Akka Streams backpressure обеспечивает natural flow control. Умеет применить базовый rate limiter к HTTP endpoint.
Penetration Testing Engineer Понимает основы rate limiting для тестирования на проникновение: выявляет отсутствие или слабость rate limiting на эндпоинтах аутентификации, API-ключах и отправках форм. Следует методологиям команды для тестирования защиты от brute-force и репортинга пробелов в throttling.
Роль Обязательность Описание
Application Security Engineer Самостоятельно проектирует средства безопасности rate limiting: распределённый rate limiting с Redis/Memcached, квоты на основе API-ключей и адаптивный throttling по сигналам угроз. Реализует обнаружение обхода rate limiting и мониторинг паттернов злоупотреблений.
Backend Developer (C#/.NET) Обязателен Реализует rate limiting в .NET сервисах: использует System.Threading.RateLimiting с Redis partitioned limiter для distributed scenarios, настраивает Polly rate limiting policy, реализует custom RateLimiterPolicy для complex business rules. Интегрирует с ASP.NET Core output caching.
Backend Developer (Elixir) Обязателен Реализует rate limiting в Elixir: использует ExRated или PlugAttack для Phoenix applications, настраивает ETS-based counters с periodic cleanup через GenServer. Реализует per-user и per-IP limiting с custom key extraction из Plug.Conn.
Backend Developer (Go) Обязателен Реализует rate limiting в Go-сервисах: использует go-redis/redis_rate для distributed rate limiting, реализует per-key limiting с custom key extraction (IP, user ID, API key). Применяет GCRA (Generic Cell Rate Algorithm) для smooth traffic shaping и настраивает response headers.
Backend Developer (Java/Kotlin) Обязателен Реализует rate limiting в Java-сервисах: использует Bucket4j с Hazelcast/Redis для distributed limiting, настраивает Resilience4j RateLimiter с custom configuration per endpoint. Реализует tiered rate limiting через Spring interceptors с extraction key из JWT claims.
Backend Developer (Node.js) Обязателен Реализует rate limiting в Node.js сервисах: использует rate-limiter-flexible с Redis для distributed limiting, настраивает @nestjs/throttler с custom storage, реализует per-route и per-user limiting. Обрабатывает rate limit headers и retry-after для клиентов.
Backend Developer (PHP) Обязателен Реализует rate limiting в PHP-проектах: настраивает custom RateLimiter в Laravel с per-user и per-IP стратегиями, использует Symfony RateLimiter component с token bucket и sliding window. Применяет Redis для distributed rate limiting между FPM-процессами.
Backend Developer (Python) Обязателен Реализует rate limiting в Python-сервисах: настраивает SlowAPI/FastAPI limiter с Redis backend, реализует token bucket и sliding window алгоритмы, применяет разные лимиты для разных endpoint'ов и user tier'ов. Настраивает throttling в Django REST Framework с custom throttle classes.
Backend Developer (Rust) Обязателен Реализует rate limiting в Rust-сервисах: создает custom Tower layer для per-key rate limiting, использует governor crate для flexible rate limiting algorithms, реализует distributed limiting через Redis с fred/deadpool-redis. Оптимизирует через atomic operations для lock-free counting.
Backend Developer (Scala) Обязателен Реализует rate limiting в Scala-сервисах: использует Akka Streams throttle для flow control, настраивает ZIO с Semaphore для concurrent limiting, реализует distributed limiting через Redis. Применяет Play Framework filters для per-request rate limiting.
Penetration Testing Engineer Самостоятельно тестирует реализации rate limiting: разрабатывает техники обхода через манипуляцию заголовками, ротацию IP и фрагментацию запросов. Валидирует консистентность throttling между API-эндпоинтами и документирует слабости rate limiting с воспроизводимыми PoC.
Роль Обязательность Описание
Application Security Engineer Обязателен Проектирует архитектуру rate limiting для продакшн API: многоуровневый throttling (edge, gateway, сервис), cost-based rate limiting для дорогих операций и стратегии graceful degradation. Реализует обнаружение злоупотреблений в реальном времени с ML-based scoring аномалий.
Backend Developer (C#/.NET) Обязателен Проектирует rate limiting для .NET микросервисов: реализует token bucket с concurrency limiter для CPU-bound endpoints, настраивает YARP reverse proxy с rate limiting, проектирует adaptive limiting через health checks integration. Оптимизирует для minimal GC pressure в high-throughput scenarios.
Backend Developer (Elixir) Обязателен Проектирует rate limiting для Elixir-систем: реализует distributed rate limiting через BEAM distribution с :global или Horde, настраивает Redis-based limiting для multi-node clusters, проектирует backpressure через GenStage demand. Оптимизирует ETS access patterns для concurrent rate checking.
Backend Developer (Go) Обязателен Проектирует rate limiting архитектуру для Go-микросервисов: реализует local + global rate limiting через sidecar pattern, настраивает rate limiting в service mesh (Envoy/Istio), проектирует backpressure mechanisms через Go channels. Оптимизирует Redis-based rate limiter для minimal latency overhead.
Backend Developer (Java/Kotlin) Обязателен Проектирует rate limiting для Java-микросервисов: настраивает Envoy rate limiting service с Java gRPC backend, реализует cost-based rate limiting через custom Bucket4j bandwidth definition. Проектирует graceful degradation с fallback responses при rate limit hit и circuit breaker интеграцию.
Backend Developer (Node.js) Обязателен Проектирует rate limiting для Node.js микросервисов: реализует sliding window через Redis Lua для atomic operations, настраивает rate limiting на API Gateway (Kong, Express Gateway). Проектирует backpressure через Node.js streams и queue-based request processing для graceful degradation.
Backend Developer (PHP) Обязателен Проектирует rate limiting для PHP-систем: реализует multi-tier limiting (nginx → PHP middleware → per-endpoint), настраивает rate limiting на reverse proxy уровне для снижения нагрузки на PHP. Проектирует adaptive limiting с dynamic thresholds на основе server load и response times.
Backend Developer (Python) Обязателен Проектирует distributed rate limiting для Python-микросервисов: реализует sliding window counter через Redis Lua scripts для атомарности, настраивает rate limiting на API Gateway уровне (Kong, AWS API Gateway). Проектирует adaptive throttling с dynamic limits на основе backend health и load.
Backend Developer (Rust) Обязателен Проектирует rate limiting для высоконагруженных Rust-сервисов: реализует zero-allocation rate limiter через lock-free data structures, настраивает multi-tier limiting с sub-microsecond overhead. Проектирует adaptive throttling на основе system metrics (CPU, memory, event loop lag).
Backend Developer (Scala) Обязателен Проектирует rate limiting для Scala-микросервисов: реализует functional rate limiter через Ref[IO] с cats-effect, настраивает Akka Cluster-aware rate limiting с distributed data, проектирует adaptive throttling через Akka Streams dynamic MergeHub.
Penetration Testing Engineer Обязателен Проектирует методологию оценки rate limiting для сложных систем: тестирует консистентность распределённого rate limiting, оценивает race conditions в применении квот и анализирует throttling API gateway при конкурентных атаках. Менторит команду по продвинутым техникам обхода.
Роль Обязательность Описание
Application Security Engineer Обязателен Определяет API-стратегию на уровне продукта. Формирует стандарты проектирования. Проводит API design review. Координирует межкомандное API-взаимодействие.
Backend Developer (C#/.NET) Обязателен Стандартизирует rate limiting в .NET экосистеме: создает NuGet packages для стандартного setup, проектирует centralized rate limit service для microservices, внедряет metrics через OpenTelemetry. Определяет API management policies для enterprise API products.
Backend Developer (Elixir) Обязателен Стандартизирует rate limiting в Elixir-экосистеме: создает Hex package для стандартного rate limiting setup, проектирует centralized rate limit configuration через Etcd/Consul, внедряет Telemetry metrics для rate limit observability. Определяет API quota management для Phoenix-based APIs.
Backend Developer (Go) Обязателен Стандартизирует rate limiting для Go-платформы: создает internal middleware library с pluggable backends, проектирует configuration-driven rate limiting через dynamic config (etcd, Consul), внедряет A/B testing для rate limit policies. Определяет SLAs и quota policies для API platform.
Backend Developer (Java/Kotlin) Обязателен Стандартизирует rate limiting в Java-экосистеме: создает Spring Boot starter для стандартного rate limiting setup, проектирует centralized quota management service, внедряет analytics для rate limit effectiveness. Определяет rate limiting policies для API monetization.
Backend Developer (Node.js) Обязателен Стандартизирует rate limiting для Node.js платформы: создает npm packages для стандартного limiting setup, проектирует dynamic rate limiting с hot-reload из config service, внедряет analytics для rate limit optimization. Определяет SLAs и quota management для API products.
Backend Developer (PHP) Обязателен Стандартизирует rate limiting в PHP-экосистеме: создает reusable Composer packages, проектирует centralized rate limit configuration через database/config service, внедряет monitoring для rate limit metrics. Определяет API usage policies для SaaS-продуктов.
Backend Developer (Python) Обязателен Определяет rate limiting стратегию для организации: стандартизирует подходы к quota management, проектирует multi-tier rate limiting (per-IP → per-user → per-API-key → per-org), внедряет monitoring и alerting для rate limit violations. Разрабатывает self-service portal для управления API quotas.
Backend Developer (Rust) Обязателен Стандартизирует rate limiting для Rust-платформы: создает internal crate с pluggable backends и configuration, проектирует rate limiting proxy для multi-protocol support (HTTP, gRPC, WebSocket). Определяет fairness algorithms для resource allocation.
Backend Developer (Scala) Обязателен Стандартизирует rate limiting в Scala-экосистеме: создает library с functional rate limiter API (tagless final), проектирует configuration-driven limiting через Lightbend Config, определяет observability patterns. Обучает команды functional approaches к rate limiting.
Penetration Testing Engineer Обязателен Определяет API-стратегию на уровне продукта. Формирует стандарты проектирования. Проводит API design review. Координирует межкомандное API-взаимодействие.
Роль Обязательность Описание
Application Security Engineer Обязателен Определяет API-стратегию организации. Проектирует platform API. Формирует enterprise API governance и стандарты.
Backend Developer (C#/.NET) Формирует API platform стратегию для .NET: проектирует Azure API Management integration с custom rate limiting policies, определяет approach для global rate limiting в Azure multi-region. Влияет на архитектуру enterprise API Gateway с учётом .NET performance characteristics.
Backend Developer (Elixir) Формирует traffic management для Elixir-платформы: проектирует rate limiting с использованием BEAM distribution для zero-external-dependency limiting, определяет architecture для API Gateway на Phoenix с advanced traffic shaping. Влияет на Elixir ecosystem через contributions в rate limiting libraries.
Backend Developer (Go) Обязателен Определяет организационную политику rate limiting для Go-платформы: многоуровневое ограничение (API gateway + сервис), адаптивный throttling, graceful degradation. Разрабатывает платформенные библиотеки с distributed rate limiting и автоматическим масштабированием лимитов.
Backend Developer (Java/Kotlin) Формирует API platform стратегию с rate limiting: проектирует self-service API management portal с quota controls, определяет pricing model на основе API usage tiers. Влияет на архитектуру enterprise API Gateway с distributed rate limiting для multi-datacenter deployment.
Backend Developer (Node.js) Формирует API platform стратегию для Node.js: проектирует global rate limiting для multi-region с eventual consistency, определяет priority queuing для SLA-based access. Влияет на архитектуру API Gateway с учётом Node.js event loop characteristics для optimal throughput.
Backend Developer (PHP) Формирует API traffic management для PHP-платформы: проектирует архитектуру rate limiting с учётом PHP stateless nature (FPM process model), определяет стратегию для API-first продуктов с monetization. Влияет на выбор между application-level и infrastructure-level rate limiting.
Backend Developer (Python) Формирует API traffic management стратегию на платформенном уровне: проектирует global rate limiting для multi-region deployments с distributed counters, определяет подходы к cost-based rate limiting (каждый запрос имеет cost). Влияет на архитектуру API Gateway с учётом fairness и priority-based access.
Backend Developer (Rust) Формирует стратегию traffic management на Rust: проектирует высокопроизводительный rate limiting service как инфраструктурный компонент, определяет алгоритмы для fair bandwidth allocation. Влияет на развитие Rust networking ecosystem через contributions в tower, hyper, governor.
Backend Developer (Scala) Формирует traffic management стратегию для Scala-платформы: проектирует rate limiting интеграцию с Akka Cluster и Kafka для event-driven quota management, определяет architecture для API-first products. Влияет на development functional rate limiting abstractions в Scala ecosystem.
Penetration Testing Engineer Обязателен Определяет API-стратегию организации. Проектирует platform API. Формирует enterprise API governance и стандарты.

Сообщество

👁 Следить ✏️ Предложить изменение Войдите, чтобы предлагать изменения
📋 Предложения
Пока нет предложений для Rate Limiting и Throttling
Загрузка комментариев...