Ctrl K

Библиотека вопросов

Вопросы с настоящих собесов. Любой можно отработать голосом за пару минут — с интервьюером, баллом и разбором.

Спроектируйте rate limiter для публичного API: например, не больше 100 запросов в минуту на один API-ключ. Сервис работает на нескольких инстансах.Backend · ДизайнMiddleСпроектируйте распределённый rate limiter для публичного API: лимиты задаются на ключ клиента, запросы обрабатывают десятки инстансов шлюза.Backend · ДизайнSeniorНапиши потокобезопасный класс RateLimiter: в конструктор передают, сколько запросов в секунду разрешено, а метод tryAcquire без ожидания возвращает true, если запрос можно пропустить, и false, если лимит исчерпан. Его будут вызывать одновременно из многих потоков.Java · КодSeniorНапишите rate limiter для API по алгоритму token bucket: функция allow принимает идентификатор клиента и возвращает, можно ли пропустить его запрос. У каждого клиента есть ёмкость корзины и скорость пополнения токенов в секунду, а сам лимитер вызывается из многих потоков одновременно.Backend · КодSenior