—
Факапы на бэкенде периодически случаются у всех. Части этих факапов можно избежать, если провести нагрузочное тестирование, определить пределы возможностей сервиса и заранее ограничить количество одновременно обрабатываемых запросов. Это позволяет сгладить неравномерность нагрузки и справиться с обработкой хотя бы части запросов, что гораздо лучше полного падения сервиса.
Решить задачу Rate Limiting помогает примитив синхронизации под названием семафор. Он пропускает внутрь заданное количество потоков, а остальные ставит в очередь. Однако современные приложения — асинхронные, использовать в них обычный семафор неэффективно. И здесь у разработчиков фреймворков и highload-сервисов появляется необходимость выбора алгоритма реализации семафора, работающего не на уровне потоков, а на уровне асинхронных задач. Неудачно выбранный алгоритм еще больше нагрузит сервис, который и так работает под нагрузкой на пределе возможностей.
1 view
4593
1480
4 weeks ago 01:14:08 1
Спектакль театра имени Моссовета “Серебряный век“. Часть 1
4 weeks ago 01:00:00 1
Константин Хабенский. Линия жизни / Телеканал Культура
4 weeks ago 01:37:01 1
“Академик Иван Павлов“. Художественный фильм (Ленфильм, 1949) @SMOTRIM_KULTURA
4 weeks ago 03:07:00 2
Золотая лихорадка нашего времени в маленьком городке. Криминальный сериал. Чистая проба- 1-4 серии.
4 weeks ago 00:07:16 1
Спастись в эндшпиле без пешки или победить? Эрик РОЗЕН 🆚 Евгений ШУВАЛОВ