Лучшие доклады с HighLoad++ 2018

в 15:17, , рубрики: Анализ и проектирование систем, Блог компании Mail.Ru Group, высокая производительность, доклады, конференции, разработка

Друзья, мы договорились с компанией Онтико, что будем публиковать лучшие доклады с их конференций на своём Youtube-канале и делиться ими с вами. Так мы хотим не только распространять знания, но и помогать нашим читателям и зрителям профессионально развиваться. Ловите подборку 15 лучших докладов, которые прозвучали на Highload++ 2018.

Репликация в Tarantool: конфигурация и использование

Георгий Кириченко, Mail.ru Group

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

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

Технические аспекты блокировки интернета в России. Проблемы и перспективы

Филипп Кулин, Дремучий Лес

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

Прогнозирование продаж интернет-магазина с помощью градиентного бустинга (lightGBM)

Александр Алексейцев, OZON.RU

Этот доклад об автоматической системе пополнения склада. Мозг системы — ML для прогнозирования продаж: постановка задачи и выбор loss-функции, работа с признаками, генерирование дата-сета, выбор модели, подводные камни процесса обучения lightGBM, оценка результатов. Скелет системы — Spark/Hadoop: ежедневная доставка/валидация данных, повышение надёжности системы. Бизнес-реалии закупок товаров: выбор поставщика, страховые запасы, борьба с уровнем сервиса поставщиков.

Также Александр рассказал про использование обученных lightGBM-моделей для оценки эластичности спроса на товары по цене планирования маркетинговых акций и эффекта от них. Разные виды функций зависимости спроса от цены для разных типов товаров и многое другое получили как «побочный» эффект от основной задачи.

Как мы работаем над стабильностью нашей реализации Lua

Антон Солдатов, IPONWEB

Компания IPONWEB использует язык Lua для описания бизнес-логики более 10 лет. В 2015 году они форкнули LuaJIT и с тех пор работают с собственной реализацией языка. Этот компонент технологического стека является критически важным для бизнеса, поэтому его стабильности уделено особое внимание.

Антон рассказал, как с нуля создавали тестовую базу для реализации; разобрал несколько случаев, когда тесты оказывались бессильны перед сложностью тестируемой системы, и в результате что-то ломалось на боевых серверах «внезапно» и «нерегулярно». Опыт, который они получили в процессе исправления таких ошибок, можно применить и к работе с LuaJIT'ом. И в завершение Антон поделился инструментами и приёмами, которыми в их компании пользуются при отладке.

Место row level security в высоконагруженном проекте

Александр Токарев, DataArt

Доклад о том, где и как лучше организовывать row level security для высоконагруженного проекта. Описал выбор способа реализации row level security в высоконагруженном enterprise-проекте (4000 пользователей, 10000 запросов одновременно, транзакционная и olap-нагрузка одновременно). Проанализировал три технологи реализации row level security в СУБД Oracle, и почему же была выбрана именно security в базе, а не на сервере приложений. Рассказал о сделанном выборе, о проблемах и дальнейших планах.

Как мы сделали свой собственный Netfilter с Intel DPDK и префиксными деревьями

Александр Самойлов, Код Безопасности

Linux Netfilter лежит в основе огромного количества МСЭ, как открытых, так и коммерческих. Это проверенное, надежное и с недавних пор даже достаточно производительное решение. Но в современных реалиях, когда через МСЭ зачастую приходится пропускать десятки гигабит трафика, а количество правил фильтрации может переваливать за тысячу, именно Linux Netfilter оказывается узким местом.

Александр рассказал о том, как они переписали сетевую подсистему Linux, которая получилась быстрой — десятки гигабит stateful- и stateless-фильтрации, отслеживания сессий, NAT и маршрутизации, удобной в управлении — научили подсистему понимать команды хорошо известных утилит iproute2 и nftables, независимой от количества правил фильтрации.

VShard — горизонтальное масштабирование в Tarantool

Владислав Шпилевой, Tarantool

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

В начале года была завершена разработка нового модуля VShard — это альтернативная реализация шардирования. В ней ребалансировка выполняется поэтапно, можно задавать произвольную шард-функцию для обеспечения локальности связанных данных, результат вычисления шард-функции сохраняется в каждой записи и не перевычисляется. Владислав рассказал о внутреннем устройстве VShard, о его подсистемах и реализации с примерами использования, и о новых возможностях VShard 0.2.

BBM’s 150M+ users Oracle to Postgres migration without downtime

Альваро Эрнандез, OnGres (доклад на английском)

BBM (Black Berry Messenger) — одно из крупнейших в мире мессенджеров с функциями текстового, голосового и видео-общения, его абонентская база составляет больше 150 млн пользователей. Он работал на on-premise СУБД Oracle. Мы помогли практически без простоя мигрировать его на PostgreSQL, работающую на GCP с репликацией в реальном времени. Альваро подробно описал процесс и подводные камни, методики, технологии и лучшие подходы к миграции Oracle на PostgreSQL без простоя. Сегодня такая миграция интересует многих, однако она требует высокой квалификации и вовлечённости в процесс, в котором подстерегает немало трудностей.

Высоконагруженная распределенная система управления современной АЭС

Вадим Подольный, Физприбор

Из этого доклада вы узнаете о новой платформе распределенной системы управления АЭС и как обеспечивается управление сложнейшими объектами автоматизации в мире. В режиме реального времени управление работой более 150 специальных подсистем, отвечающих за различные технологические процессы АЭС. Более 100К источников данных от датчиков и до 500К расчетных параметров. 5 разновидностей физических процессов.

При некоторых отклонениях вся система превращается в огромный DDoS-источник полезной диагностической информации, что мешает нормальному управлению объектом. Вы узнаете, как мы «разруливаем» такие проблемы, узнаете об аппаратной и программной архитектуре таких систем, как обеспечивается резервирование и репликация, зачем нужна избыточность данных и технологическое разнообразие. Как обеспечивается управление нагрузками, как устроен QoS. И что будет, если отключится система нормальной эксплуатации, как, например было на Фукусиме.

Платформа 4К-стриминга на миллион онлайнов

Александр Тоболь, Одноклассники

Сервис Видео в Одноклассниках — вторая площадка в Рунете по просмотрам видео: 600 млн просмотров ежедневно. Платформа стриминга ОК сейчас позволяет вести профессиональные трансляции в 4К, стримить с телефона в FullHD и отдавать пользователям более 3 Тб/сек трафика.

Александр рассказал про:

  • pipeline видеостриминга в 4К на миллионы онлайн;
  • архитектуру системы доставки контента;
  • тюнинг TCP для раздачи 4K;
  • как и зачем нужно отказаться от ffmpeg и про нарезка видео на GPU;
  • что делать, если мощности кончились, а пользователи продолжают приходить;
  • проблемы стриминга на TCP;
  • будущее видео-стриминга.

Последние изменения в IO-стеке Linux с точки зрения DBA

Илья Космодемьянский, Data Egret

Проблемы с производительностью ввода-вывода находятся в повседневной повестке дня администраторов баз данных с тех пор, как базы данных существуют. В Linux — вероятно, самой популярной операционной системе для баз данных, — в течение последних нескольких лет происходит капитальный ремонт IO-стека.

Илья рассказал о том, что происходит, почему IO-стек нуждается в срочном улучшении, к чему это может привести для баз данных. Как новые драйвера NVMe и blk-mq будут улучшены. В качестве полезной памятки Илья предложил контрольный список настроек PostgreSQL и Linux, чтобы максимизировать производительность подсистемы ввода-вывода в новых ядрах.

FAQ по архитектуре и работе ВКонтакте

Алексей Акулович, ВКонтакте

Алексей поднял много тем и вопросов, которые возникают у людей «со стороны».

Например:

  • Общая архитектура взаимодействия наших серверов.
  • Если ли во ВКонтакте «обычный» PHP, где и почему. А какие еще ЯП используют?
  • Как обновить код на десятках тысяч серверов за секунды.
  • Отказоустойчивость кластеров мемкэша при постоянно ломающихся серверах.
  • Зачем ВКонтакту свои движки (БД), сколько их, и как они с ними живут.
  • Чем бинлог отличается от снэпшота, и как «откатить DELETE».
  • Чем можно всё это мониторить.

DNS в Facebook

Олег Облеухов, Facebook

Олег рассказал о том, как в Facebook балансируют нагрузку, и при чём тут DNS-инфраструктура, как ресурсные записи попадают в глобальную инфраструктуру Facebook, и как компания использует DNS в организации dogfooding.

Базы данных и KubernetesDevOps и эксплуатация

Дмитрий Столяров, Флант

Дмитрий поделился опытом и на конкретных примерах рассказал, в каких случаях имеет смысл размещать базы данных (и в целом stateful-приложения) в Kubernetes, а в каких это неоправданно, или даже вредно и опасно.


Эта подборка лежит на нашем Youtube-канале «Технострим». Мы создали его, чтобы делиться самыми разными учебными материалами, и в том числе лекциями наших учебных технопроектов. Мы уже писали на Хабре о Техностриме, так что если вы про него не слышали, почитайте. И заходите почаще, там постоянно появляется что-нибудь интересное.

Автор: Olga_ol

Источник


* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js