ky0, о, я что-то не обратил внимания.
С другой стороны сделать валидацию и получение данных из JWT токена не очень сложно, можно наверное даже на встроенном njs написать. Ну или на той же гошечке + auth_request
Но погодите, limit_req это именно «лимит», т.е. число после которого серверу станет плохо, а не среднее количество запросов которое реально приходит.
Так что если вы знаете что на 800 сервер начинает троттлить, то надо поставить 750 лимита и сколько-то (допустим 50) бурста что бы несколько одновременных запросов не ломались.
Ну вот тут опять вопрос что понимается под «600 r/s»
Что я в него одномоментно зашлю 600 запросов, а потом через секунду ещё 600.
Или что я более-менее равномерно в течении секунды буду засылать 600 запросов (примерно по запросу каждые 1.6ms).
> обычно в базе хранится строка регистронезависимо
Это где такое «обычно»?
Ну и вообще, в чём задача этих коротких ссылок? Например если люди должны их перепечатывать руками с рекламы в 5 метрах или (не дай бог) озвучивать по телефону, то лучше использовать только маленькие буквы, да ещё и выкинуть слишком похожие.