HighLoad++ 2017
[как это было]

Хайлоад++ это топовая профильная конференция по технологическому стеку, с которым я работаю каждый день. Это концентрат новых знаний. Каждая такая конференция выводит мышление на новый уровень и открывает новые горизонты.

Затегируй себя

Затегируй себя уникальная фича данной конференции.

Заранее были составлены и распечатаны мелкие наклейки с различными тегами, которые указали участники (был отдельный опрос через гугл формы). 

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

Доклады

Докладов было много, поэтому я сосредоточился нескольких темах

  • управление проектами и командой
  • базы данных
  • отказоустойчивые системы
  • непрерывная интеграция (CI/CD)

Далее коротко о сути нескольких технических докладов, которые я посетил.

Полностью новый Youtube

Ребята из Youtube рассказывали, как они переписали вcю платформу и технически улучшили сервис.

У Google много проектов. Однако они были разработаны в разное время. Так, например, первая версия Youtube была написана более десяти лет назад. За это время появилось много новых сервисов. На текущий момент все сервисы должны использовать Material Design и стандартизированный внутренний API для взаимодействия – именно в этом отставал Youtube, это создавало сложности и поэтому появилась необходимость его переписать.

В качестве библиотеки для разработки фронта они честно рассматривали разные популярные движки, реализующие парадигму веб-компонентов. У них было требование: максимально использовать нативные средства браузера для отрисовки компонентов, но все-таки выбрали Polymer от Google.

В итоге, единственное, что взволновало посетителей сайта – новая темная тема. Остальные изменения под капотом они не заметили.

Нововведения в MariaDB 10.2 и 10.3

Их много, но особо мне понравились

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

Блок-чейн

Блок-чейн один из главных трендов настоящего. 

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

Новая система сообщений в ВК

Как полностью переписать систему сообщений соц. сети ВКонтакте? 

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

Перейдя на новую систему сообщений, ВК вдвое сократил количество серверов с 1000 до 500. И сэкономил на этом несколько миллионов долларов. 

На реализацию новой системы сообщений ушел примерно год времени и 3 программиста.

Нагрузочное тестирование

Это сложный процесс, но самое главное

  • начинать нужно с проверки железа
  • инфраструктура должна максимально совпадать с продом
  • объем данных должен быть близок максимально близок к проду

Слушай, Алиса а кто тебя сделал

Неожиданно, в конце первого дня конференции, после последнего доклада приехали ребята из Яндекса, а именно разработчики нового голосового помощника Алиса”.

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

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

Одна из важных задач, следить, чтобы Алиса не хамила в ответ пользователю, и в целом вела себя корректно.

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

Хочется выделить полезную особенность Алисы она умеет понимать и хранить контекст разговора. То есть сначала можно спросить сколько времени в Лондоне”, а потом а сколько там градусов сейчас”, и Алиса поймет, что там” это в Лондоне.

Возможно в будущем, Яндекс предоставит разработчикам АПИ (возможно платное) для использования возможностей Алисы в своих приложениях.

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

Митап-поинты

Помимо основных докладов было много тематических митап-поинтов, где можно было собраться небольшой группой и обсудить с коллегами  вопросы. И это тоже происходило в одно время с основными докладами. Главное отличие митапов от докладов непосредственное общение и обсуждение технологии.

Мне удалось выбраться только на один митап это был митап, посвященный супер хранилищу данных от mail.ru Tarantool. Один из ведущих разработчиков рассказывал, какими путями они пришли к необходимости написания собственного решения и как было до этого. А так же поделился с нами техническими подробностями и деталями реализации: каким образом тарантул работает быстро.

Сначала у них была обычная БД MySql. Потом данных стало много, все стало тормозить. Правда перед этим у них тупил веб-сервер, в качестве которого был Apache, и они его просто” заменили на nginx, и все стало работать быстро. От этого создалось впечатление, что можно точно так же, просто” заменить одну реляционную БД на другую, и тоже должно стать быстро. Но так не получилось, потому что все они работают по одному принципу и не могут работать быстрее. Долго ли, коротко ли решиили писать свою БД. Главное, за счет чего тарантул работает быстро это последовательная линейная запись на диск (а не в виде деревьев) и то, что все операции выполняются в памяти (ОП). В будущих версиях планируется поддержка полноценного SQL.

Стенды

Рядом с главным залом было много стендов, где можно было поучаствовать в различных квестах. Где-то нужно было починить сломавшийся проект, и для этого давался консольный доступ к серверу (itsumma). Где-то нужно было, в большом бассейне с шариками, найти шарик с наклейкой (селектел). И прочие.

Lamoda

Моё внимание привлек стенд lamoda там была карта технологий используемых в компании. Они были разбиты по принципу: используем (adopt), про,уем (trial), обратили внимание (assess), и заблокировано (hold). Вся разработка должна строго соблюдать указанные ограничения. У них например забанен пхп 5.х, они пишут только на 7.х.

Я пообщался с ребятами из ламоды. Выяснил, что у них все очень сложно на самом деле сделано. У них используется микро-сервисная архитектура. Каждый сервис в своем контейнере и общаются они между собой по REST API. И есть микро сервис отвечающий за маршрутизацию: то есть к нему сначала идут, чтобы получить адрес нужного сервиса.

Микро-сервисная архитектура это когда один большой проект (монолит) разбивается на группу небольших функциональных модулей, независимых друг от друга. Они общаются по АПИ. Они могут находиться, как на одном физическом сервере, так и на разных. Самое главное, что это увеличивает отказоустойчивость и упрощает разработку.

Kubernetes

Kubernetes средство автоматического развертывания контейнеров с приложениями и микро-сервисами, в контексте непрерывной интеграции (CI/CD). Например, он умеет автоматически создавать веб-площадку по имени ветки: то есть вы работали в своей фичевой ветке, запушили, и хоп появилась площадка task-123.dev.some-project.ru. 

Зачем вообще нужна разработка с использованием контейнеров?

Контейнер это не виртуализация, это группа процессов изолированная от основной системы. То есть никаким образом внешняя система не может повлиять на процессы внутри контейнера, и наоборот. Самым популярным средством контейнерезации является Docker. 

Работ с контейнерами позволяет вести разработку и тестирование в среде, полностью идентичной продуктовому серверу: начиная от сборки ОС и ресурсами сервера, и заканчивая версиями различных пакетов (nginx, php-fpm, и тд). Такой подход решает проблему, когда у меня локально все работает”, а на проде что-то не работает.

Пообщавшись с ребятами из Фланта, мы выяснили, что битрикс плохо подходит для разработки с использованием контейнеров, тк при каждом релизе старый контейнер будет уничтожаться. А это значит, что на проде нельзя внисить какие-илбо правки в файловую структуру (например создавать физические разделы через админку). Все должны работать по одному сценарию: развергул у себя проект, внес правки, закомитил, запушил, прошел тесты, и только после этого новый раздел появится на проде. 

DDOS

DDOS сетевая атака на сайт, с целью исчерпать ресурсы сервера и вывести сайт из строя. 

Советами по сетевой безопасности поделились ребята из компании qrator. Так же у них можно было сдать экзамен”, вытащив один из предложенных билетов. Так я узнал, что long-poll POST запросы это сетевые атаки уровня L7, применяемые с целью деградации веб-приложения.

Были и другие интересные стенды, со всеми не хватило времени пообщаться.

Стоимость участия

Пожалуй, стоит отметить, что конференция очень дорогая.

Мне достался билет за 24тр, но на старте продаж можно было купить и за 14тр. В последние дни билеты стоили уже 27тр. Вывод покупайте билеты заранее!

Да и вообще все мероприятие обходится недешево: поезд(4тр), гостиница(3тр), такси(1тр), связь(1тр да, роуминг это дорого) + 24тр билет. Итого, примерно 35тр. 

Но полученные знания и впечатления стоят того!

Организационные вопросы

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

Для важных анонсов был заведен телеграм канал, в котором прямо по ходу конференции публиковались различные объявления: что где началось, кому куда подходить и тд. Очень круто. Трудно было пропустить что-то важное.

Обед

Особое внимание было уделено обеду. 

Раз 10 спрашивали, что и когда будете есть (был большой выбор меню). Так как докладов было очень много (8 параллельных потоков), то обеды проходили прямо во время докладов. Так что пришлось делать трудный выбор, чтобы сходить поесть.

Водопад

Необычно выглядел водопад, в форме эмблемы конференции. 

На это лучше один раз сразу посмотреть.

Вечерняя программа

Вечером был пивной фуршет и кибер спорт, а так же настольные игры.

Еще немного фотографий 

В заключение

Однозначно рекомендую всем посетить следующий хайлоад, и обязательно поеду сам.

И большое спасибо Олегу Бунину и всей его команде за конференцию.

Комментарии

Форма для связи

Контакты
Telegram:

по запросу

Skype:

по запросу

Телефон:

по запросу

Город:

Санкт-Петербург