Доклад

Когда защите нужна защита: как мы ломали и восстанавливали Антиробот Яндекса

Подробнее о докладе

Дата 30 ноября, 15:40
Зал Зал «Кейптаун»
Формат Доклад, 50 минут
Уровень Средняя сложность

Спикеры

Кому полезно

Backend-разработчики, SRE, performance-инженеры, архитекторы и техлиды, которые проектируют и эксплуатируют высоконагруженные сервисы на критическом пути запроса. Доклад также будет полезен инженерам антифрод- и anti-DDoS-систем.

О чём доклад

Антиробот Яндекса - это один из самых высоконагруженных сервисов в Рунете по количеству обрабатываемых запросов в секунду. Он находится на критическом пути пользовательского запроса, поэтому его ошибка может заблокировать легитимный трафик, повлиять на доступность защищаемого сервиса или незаметно оставить сервис без защиты.

На обезличенных production-инцидентах я покажу, как одно правило заблокировало всё, другое вывело из строя целую инсталляцию, бинарно-несовместимый инстанс вызвал каскадное падение кластера, а холодный старт создал угрозу повторной перегрузки.

Отдельно разберём производительность. Одна из атак показала, что реальная пропускная способность кластера заметно ниже расчётной: сервис не успевал обрабатывать внутреннюю очередь запросов, хотя процессоры ещё не были полностью загружены. Расскажу, как мы проводим нагрузочные испытания, ищем замедляющие изменения с помощью профилирования и разбираем редкие падения по крэш-дампам, с помощью санитайзеров и зеркалированного трафика.

Расскажу о наших поломках в капче, какие выводы мы из этого сделали и как теперь тестируем и выкатываем её.

Слушатели получат практический набор принципов для высоконагруженных систем: как ограничивать последствия ошибочных изменений, проверять совместимость релизов, оценивать реальную производительность и безопасно восстанавливаться после аварии.

Видео