Домен
API и интеграции
Профиль навыка
Token bucket, sliding window, distributed rate limiting, quotas, backpressure
Ролей
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 и стандарты. |