24FreelanceБиржа фриланса, которая не спит
Срок приёма заявок истёк

Разработка сервиса ограничения частоты запросов и квот для публичного API

78 просмотров 0 откликов#42150
Бюджет€1 250за проект
ФорматРазовый проектбез предоплаты
ОплатаНаличные, Банковский перевод
Приём заявокСрок приёма заявок истёкдо 08.09.2026
Откликов0в среднем по разделу: 0,1
Просмотров7828 за 14 дней

Описание проекта

У нас есть публичный API, который растёт быстрее, чем справляется инфраструктура, и несколько клиентов регулярно бьют по эндпоинтам всплесками, из-за которых страдают все остальные. Нужен инженер, который построит отдельный сервис ограничения частоты запросов и квот, стоящий перед нашим API и применяющий разумные лимиты для каждого ключа. Это не проект API-шлюза и не ретранслятор вебхуков: единственная и чётко очерченная задача здесь — троттлинг и учёт квот. Нам нужны настраиваемые политики на ключ, чтобы бесплатный ключ получал, скажем, шестьдесят запросов в минуту, а платный — тысячи, и чтобы применение лимитов было предсказуемым, быстрым и устойчивым к пиковому трафику.

По алгоритмам хотим и вариант с корзиной токенов для сглаживания коротких всплесков, и счётчик со скользящим окном для точного учёта в пределах окна, выбираемые на уровне политики. Счётчики должны храниться в Redis, чтобы несколько узлов API видели одинаковую картину потребления без расхождений, а сама проверка добавляла лишь миллисекунду-две задержки. Помимо простых лимитов нужны полноценные уровни квот с месячными или суточными лимитами, учёт потребления по каждому ключу и способ возвращать вызывающей стороне остаток квоты. При превышении лимита сервис обязан отвечать статусом 429, отдавать стандартные заголовки лимитов, включая limit, remaining и reset, и добавлять подсказку Retry-After, чтобы корректные клиенты сами снижали нагрузку.

В поставку входят небольшая админ-панель или формат конфигурации для описания тарифов и привязки ключей, хранилище метрик для биллинга и аналитики, а также понятная документация. Расскажите, как вы планируете атомарные операции в Redis, как избегаете гонок при высокой конкурентности и как будете нагрузочно тестировать ограничитель до вывода в бой.

— Политики на ключ с алгоритмами корзины токенов и скользящего окна
— Уровни квот с суточными и месячными лимитами
— Общие счётчики на Redis с минимальной добавленной задержкой
— Учёт потребления и отчёты для биллинга
— Корректные ответы 429 с заголовками limit, remaining, reset и Retry-After
— Админ-конфиг тарифов и привязки ключей, документация и нагрузочные тесты
Веб программирование Наличные, Банковский перевод
24
Твенти · совет

Как написать отклик, который выберут

  • Начните с задачи заказчика, а не с рассказа о себе.
  • Дайте одну-две похожие работы из портфолио.
  • Назовите цену и срок — и что именно в них входит.
  • Задайте один уточняющий вопрос — он начинает диалог.

Отклики 0

Тексты откликов видит только заказчик.

Тот же раздел

Похожие проекты

Все проекты раздела
Полезно знать
Как откликнуться на этот проект?

Войдите как фрилансер, опишите, как решите задачу, укажите цену и срок. Заказчик читает отклики и начинает диалог с лучшими.

Кто видит мой отклик?

Только заказчик, разместивший проект, и вы. Другие фрилансеры не видят ни текст, ни цену.

Где найти похожие заказы?

Новые проекты в разделе «Веб программирование» появляются каждый день. Все проекты раздела

ЗАКАЗЧИКАМ · БЕЗОПАСНАЯ СДЕЛКА

Нужен похожий проект? Разместите задание бесплатно за 30 секунд

Получите предложения от проверенных фрилансеров и оплачивайте результат только после приёмки через Безопасную сделку.

Разместить задание бесплатно →Как работает защита
ИСПОЛНИТЕЛЯМ · PAYORA 1-CLICK

Закрепите анкету в ТОП категории за $5 / неделю

Поднимите свой профиль и портфолио на 1-е место каталога (оплата в 1 клик через Payora) и получайте до 5× больше прямых заказов.

Закрепить в ТОП ($5/нед)Пополнить через Payora