Robin & Azure
Robin Robin
Привет, Азур. Я тут подумал над одним решением, чтобы сервис стабильно работал под большой нагрузкой – что-то вроде “быстрого патча” для скачков задержки. У тебя бывало что-то похожее в своих проектах?
Azure Azure
Похоже на типичную проблему с нехваткой ресурсов. В моём последнем микросервисе была похожая всплеск, когда очередь асинхронных задач перегрузилась, а все потоки заняты. Я добавила небольшой токеновый бакет для ограничения входящих запросов и небольшой кэш, чтобы часто используемые данные не грузились из базы каждый раз. Это удержало задержки под контролем, без переработки всего проекта. Ты что-нибудь подобное пробовал?
Robin Robin
Отличный ход — комбинация токена и кэша — надежная штука. Я делал похожее: использовал ограничитель в стиле «протекающего ведра» и локальный кэш в памяти для самых частых запросов. Так рабочим не приходится утонуть, а базу данных не нагружаем слишком сильно. У тебя какой размер был у кэша, и какую политику выгрузки ты использовала?