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

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

Программный комитет ещё не принял решения по этому докладу

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

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

Тезисы

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

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

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

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

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

С 2018 года работает в Яндексе над проектами антифрода. Backend-разработчик. Работал в поисковом антиспаме, сейчас занимается всем, что связано с антироботом и капчей, в том числе разработкой продуктов в Yandex Cloud.
Участник различных контестов по AI и ML.

Видео

Другие доклады секции

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