HighLoad++
6K subscribers
2.28K photos
137 videos
15 files
2.12K links
Официальный канал профессиональной конференции разработчиков высоконагруженных систем

Встречаемся 6 и 7 ноября в Москве на HighLoad++ 2025: https://highload.ru/moscow/2025

Общаемся в чатике https://t.iss.one/HighLoadTalks
Download Telegram
Всем привет!

Как сделать рекомендации сообществ ВКонтакте, чтобы за них не было стыдно ни перед десятками миллионов пользователей, ни перед пацанами – расскажет Евгений Малютин (ВКонтакте).
📋 https://clck.ru/arMPu

Рекомендательная система может стать как черной дырой, пожирающей железо и время разработчиков и не приносящей результат, так и управляемой точкой роста для продукта. В случае b2c-продуктов: социальных сетей, e-commerce или контентных платформ ставки еще выше — от качества рекомендаций напрямую зависит Life time value пользователя и ключевые метрики компании.

В своем докладе Евгений разберет, как работают рекомендательные системы и какие возникают проблемы, когда нужно рекомендовать контент 97 млн пользователей и отдавать результат на скорости 10k RPS. Покажет, как логически и технически устроены подобные системы на примере рекомендаций сообществ ВКонтакте. Обсудит плюсы и минусы трех классов систем: офлайн, онлайн и асинхронные, чем стоит руководствоваться при выборе и как жить c последствиями.

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

Встречаемся 17 и 18 марта в Москве, в Крокус Экспо!

⚡️Купить билет уже сейчас можно на сайте — https://clck.ru/arMNQ
Привет, друзья!

💥Продолжаем знакомить вас со спикерами Яндекс трека в рамках Highload++ Foundation.
Про нейросетевые рекомендации сообществ поговорим с Любовью Пекша (ВКонтакте).
📋 https://clck.ru/arRDV

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

На примере рекомендаций сообществ ВКонтакте, Любовь расскажет, как сделать нейросетевую архитектуру для рекома, которая действительно хорошо работает и даже (маленький спойлер) приносит приросты не только для команды Сообществ.

Главное преимущество нейросетевого подхода — гибкость архитектуры. Решение разработчиков «ВКонтакте» позволяет им инкорпорировать в рекомендательную систему различные требования. Например: дайверсити, бустинг маленьких сообществ, качественные эмбеддинги сообществ. Также гибкая архитектура позволяет использовать разные метаданные: от счетчиков взаимодействий пользователя с контентом до эмбеддингов текста и картинок. Но сделать так, чтобы эти метаданные действительно улучшали алгоритм, не так просто, как кажется, и Любовь расскажет, как они в ВКонтакте решили эту проблему.

До встречи на HighLoad++ 17 и 18 марта в Москве. Подробная информация и билеты на сайте – https://clck.ru/arRFv
Всем привет!

💥Одним из спикеров Яндекс трека будет Владислав Пятков.
Владислав более трёх лет работает в GridGain: начал с работы в поддержке, затем перешел в команду ядра. Занимается разработкой распределённых протоколов Apache Ignite. Также проводит много времени, изучая профили нагрузки клиентских решений.
📋 https://clck.ru/asgtu

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

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

В докладе будет представлена концепция исторического ребаланса, реализованная в распределенной базе данных Apache Ignite:
* когда необходим ребаланс;
* метод восстановления согласованности данных между репликами;
* проблема обработки нагрузки;
* обработка удалённых записей;
* когда объём переносимых данных можно значительно уменьшить;
* компромисс и оптимизации;
* обработка сбоев.

До встречи на HighLoad++ 17 и 18 марта в Москве. Подробная информация и билеты на сайте – https://clck.ru/asgvD
Привет, друзья!
В своём докладе Юрий Дзюбан из Авито расскажет о том, как они спроектировали, разработали и запустили в эксплуатацию root cause detector.
📋 https://clck.ru/atkYj

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

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

Этот доклад будет полезен для тех, кто хочет начать применять практику root cause-анализа у себя в компании с целью уменьшения времени жизни инцидентов.

До встречи на HighLoad++ 17 и 18 марта в Москве. Подробная информация и билеты на сайте – https://clck.ru/atka7
Всем привет!

Андрей Лескин обладает более чем десятилетним опытом коммерческой разработки, программирования и построения высокопроизводительных аппаратных и программных решений.

Работая в Qrator Labs с 2013 года, прошел путь от разработчика до технического директора компании.
📋 https://clck.ru/atu5z

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

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

В дополнение, новый виток именованных ботнетов в очередной раз показал, что опасность хорошо организованной DDoS-атаки может быть не столько в самой атаке, сколько в “сопутствующем ущербе” от неё.

Обо всем этом Андрей расскажет на своем выступлении и покажет на конкретных примерах, что из себя представляет новый ботнет Mēris.

Встречаемся 17 и 18 марта в Москве, в Крокус Экспо!

⚡️Купить билет уже сейчас можно на сайте - https://clck.ru/atu6E
Всем привет!
Яндекс в 2021 году запустил три HPC/GPU-кластера для машинного обучения, которые стали самыми мощными суперкомпьютерами в России.

Дмитрий Монахов расскажет о том, с какими сложностями и неожиданностями они столкнулись на этом пути.
📋 https://clck.ru/au8Mi

Из доклада вы узнаете:
* о революции трансформеров;
* о том, что такое современный HPC/GPU-кластер, зачем коммерческим компаниям понадобились суперкомпьютеры;
* на каком стеке технологий они строятся и почему;
* почему HPC — это сложно, а традиционные подходы часто не работают;
* как вообще устроен процесс попадания в топ-500, и как, оптимизируя производительность для попадания в рейтинг, мы нашли проблемы, решив которые, мы ускорили наше машинное обучение.

До встречи на HighLoad++ 17 и 18 марта в Москве. Подробная информация и билеты на сайте – https://clck.ru/au8PP
Всем привет!

Приходите на выступление Георгия Енукидзе - бэкенд-инженера в DS-команде в Авито.
📋 https://clck.ru/auEdp

У них в команде более 40 однотипных ML-микросервисов, и их число постоянно растет. Перед бэкенд-инженерами стоят задачи обеспечения максимального RPS, оптимизации использования железа и централизованного распространения лучших практик и фич между сервисами.

В результате решения этих задач появился фреймворк «Акведук», позволяющий описать пайплайн обработки данных, концентрируясь на его логическом устройстве, а не технических деталях.

С технической точки зрения Акведук представляет собой легковесную Python-библиотеку, активно использующую возможности пакетов 'multiprocessing' и 'asyncio', что позволяет значительно повысить утилизацию инференс серверов.

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

До встречи на HighLoad++ 17 и 18 марта в Москве. Подробная информация и билеты на сайте – https://clck.ru/auEeC
👍1
Привет, друзья!

Всеволод Светлов - руководитель группы нейросетевой персонализации в Яндексе расскажет, как строить Low Latency рекомендательный трансформер на миллион RPS.
📋https://clck.ru/auMQe

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

Примерный план доклада:
* высокоуровневое описание модели, для чего она нужна и как она работает;
* зачем они разделили полноценный рекомендательный трансформер с early fusion-подходом на независимые части;
* какие сложности возникают в обеспечении консистентных данных в рантайме и в обучении;
* почему вашу рекомендательную модель нужно регулярно дообучать;
* почему батчевание GPU-вычислений критически важно;
* как разделение СPU- и GPU-частей модели может помочь выиграть еще несколько тысяч RPS на GPU.

Встречаемся 17 и 18 марта в Москве!
Забронировать билет - https://clck.ru/auMRN
👍1
Привет, друзья!

Ибрагим Бадертдинов и Александр Абрамов из SberDevices расскажут, про ускорение и облегчение моделей для поддержания диалога виртуальных ассистентов Салют.
📋 https://clck.ru/audd4

Команда SberDevices активно разрабатывает виртуальных ассистентов Салют. Они используют технологии AI для распознавания голоса и обработки естественного языка, чтобы их помощники умели вести беседу и приносили реальную пользу людям.

Для этого постоянно приходится решать различные NLP-задачи. Они адаптируют и обучают большие языковые модели на базе трансформеров (BERT, GPT).

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

В рамках доклада Ибрагим и Александр поделятся своими практиками, как эффективно обучать большие multitask-модели, быстро собирать необходимые данные и, самое главное, как оптимизировать использование ресурсов памяти и ускорять модели в продакшне.

До встречи на HighLoad++ 17 и 18 марта в Москве. Подробная информация и билеты на сайте – https://clck.ru/auddo
Всем привет!

Александр Прудаев из группы разработки движка Яндекс.Метрики, расскажет историю одного переезда метрики.
📋https://clck.ru/aupoj

В Яндекс.Метрике существует сборка визитов пользователей на сайте, для этого необходимо хранить историю всех событий и склеивать их друг с другом на лету.
Для этого использовалась конвейерная распределенная система, со своим самописным локальным хранилищем и своей логикой репликации и шардирования. По мере роста нагрузки разработчики уперлись в производительность отдельного шарда, при этом продолжать наращивать их количество без принципиальной перестройки архитектуры было крайне болезненно.

🔹В рамках доклада Александр расскажет:
1. почему остановились на YDB, как переезжали, что сломали;
2. как научились работать с таблицей в 40ТБ и 1 миллионом запросов в секунду;
3. как тестировали и масштабировали.

До встречи на HighLoad++ 17 и 18 марта в Москве. Подробная информация и билеты на сайте – https://clck.ru/auppa
Привет, друзья!

Андрей Фомичев – руководитель отдела разработки систем хранения и обработки данных Yandex Database, расскажет про особенности выполнения распределенных транзакций и что они делают для того, чтобы их поведение было привычным для пользователя.
📋 https://clck.ru/ausHd

В Yandex хотят предоставить возможность взятия снапшота всей базы на начало выполнения транзакции, но без MVCC эта операция очень дорогая, так как в интерактивной транзакции заранее неизвестно, какие таблицы или диапазоны ключей будут затронуты. Реализация MVCC позволяет нам читать состояние базы на нужный момент времени в прошлом, и задача взятия снапшота сводится к выбору глобального Timestamp.

Погрузимся в особенности реализации MVCC в YDB:
* MVCC поверх LSM-деревьев;
* как они сделали MVCC с консистентными снапшотами в распределенной базе данных;
* почему выбрали глобальные, а не локальные таймстемпы.

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

В итоге — довольно уникальная ситуация, в которой мы можем сравнить поведение распределенной базы с MVCC и без MVCC под различными нагрузками.

До встречи на HighLoad++ 17 и 18 марта в Москве. Подробная информация и билеты на сайте – https://clck.ru/aus4t
Всем привет!
Приходите послушать доклад Дмитрия Овечкина - техлида voicekit Tinkoff о внутреннем устройстве сервиса распознавания речи.
📋 https://clck.ru/avzvU

Перед разработчиками стояла задача — обработка ~7000 параллельных аудиопотоков для распознавания, а также распознавание не в потоке с RTF (Real Time Factor) < 0.25, используя при этом ограниченные ресурсы GPU.

Дмитрий расскажет о том, зачем вообще необходимо распознавание речи, даст обзор основных модулей их сервиса, углубится в технические детали реализации:

* какими метриками можно оперировать в потоковых аудиосервисах (SPS, RTF, Head/Tail latency);
* как переписать бэкенд с Python на Go из-за отсутствия в Python хорошей многопоточности;
* как перевести кодовую базу на go-pipelines (https://blog.golang.org/pipelines), чтобы каждый этап обработки аудио проходил асинхронно;
* как развертывать deep-learning-модели в проде при помощи tf-serving, балансировки grpc-запросов через envoy и бесшовной выкатки новых моделей;
* как правильно настраивать батчинг моделей, чтобы максимально утилизировать GPU.

До встречи на HighLoad++ 17 и 18 марта в Москве. Подробная информация и билеты на сайте – https://clck.ru/avzw5