Не рейт-лимитером единым: как управлять нагрузкой в микросервисной системе на практике

SRE и эксплуатация систем

Бэкенд / другое
Архитектурные паттерны
Отказоустойчивость
Оптимизация производительности
Распределенные системы
Архитектура данных, потоки данных, версионирование
Архитектуры / другое
Надёжность продакшена
Оптимизация
Микросервисы
Расширение кругозора

Доклад принят в программу конференции

Мнение Программного комитета о докладе

Доклад о том, как жить с высоким RPS в микросервисах: дедлайн-пропагация, лимиты, фолбэки, контроль мультипликации вызовов и ретрай-штормов — где выигрываем по времени/ресурсам и что рискуем сломать. И главное: почему, зная все это, команда Олега все равно словила инцидент на проде.

Целевая аудитория

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

Тезисы

Я расскажу о том, какие проблемы, связанные с распределением совокупного 200k+ RPS-ного трафика есть в нашей более чем 300 микросервисной системе, какие инструменты для борьбы с ними мы реализовали и как их применяем. А также расскажу про инцидент, который остановил работу сервиса, где все обилие наших знаний и инструментов не помогло его избежать.

Вы узнаете:
* Про подходы нивелирования влияния трафика на сервисы.
* Про архитектурные ошибки при создании взаимодействия между микросервисами.
* Про то, как происходил реальный масштабный инцидент.
* Про то, к каким выводам мы пришли в результате разбора инцидента.

Олег Табота

Яндекс Еда

Первый код написал в 6-м классе. Долго работал на фрилансе, создавая сайты под ключ, от дизайна и верстки до разработки и SEO-продвижения. Участвовал в стартапах разной успешности. В данный момент возглавляет платформенную команду общих компонент в Яндекс Еде.

Видео