Расставляем точки над микросервисами. Секция Avito на РИТ++ 2017 (Видео)

в 10:05, , рубрики: docker, event stream processing, Go, hashicorp vault, kubernetes, архитектура, Блог компании Avito, высокая производительность, микросервисы, Разработка веб-сайтов

Вот и подоспели материалы с фестиваля РИТ++ 2017. Мы выступили там с докладами по темам machine learning, front-end и mobile разработки и провели отдельный тематический блок, посвященный микросервисам. Под катом – видеозаписи выступлений на этой секции наших докладчиков и коллег из других компаний. Обязательно загляните, чтобы узнать о подходах к работе с микросервисами и интересных приемах, которые реально использовать для решения ваших задач.

Расставляем точки над микросервисами. Секция Avito на РИТ++ 2017 (Видео) - 1

Микросервисная архитектура: проблемы и решения

Тему микросервисов на мероприятии открыл Сергей Орлов в главном зале РИТ++. Это был разговор о проблемах, задачах и решениях микросервисной архитектуры, на которую переходят многие современные веб-проекты. Но при этом классические задачи предстают в новом свете. К разработке, эксплуатации, тестированию предъявляются качественно новые требования. Обо всем этом (и, конечно, о подходах к решению проблем) рассказывается в видео.

Преимущества и недостатки микросервисной архитектуры в HeadHunter

Хотите распилить монолит на микросервисы? Учитывайте, что эти изменения затронут всю компанию. Скорее всего, возникнут проблемы с разработкой, деплоем, эксплуатацией и так далее. Иногда они могут даже свести на нет преимущества от использования микросервисов. В своем докладе Антон Иванов из HeadHunter взвешивает преимущества и недостатки при вертикальном и горизонтальном делении на микросервисы.

События, события и ещё раз события

Для сбора событий мы в Avito разработали систему Event Stream Processing. К ней предъявлялись высокие требования. Это хорошая пропускная способность, отказоустойчивость, масштабируемость. Из доклада Антона Сухова вы узнаете, почему для решения наших задач мы предпочли NSQ, а не fluent, как решать проблемы сбора событий, которые неизбежно возникают при переходе от монолита к микросервисам, а также как заложить базу для того, чтобы новые события добавлялись в полностью автоматизированном режиме. Если вы решите, что хотите реализовать подобную систему, то посмотрите наш небольшой чек-лист по требованиям к ней и к вашей инфраструктуре в конце видео.

Мониторинг в микросервисной архитектуре

В этом видео Владимир Колобаев рассказывает о системе мониторинга в Avito. Ключевые слова: мониторинг как сервис (разработчики сами могут отправлять метрики, создавать дашборды, триггеры и нотификации для своих проектов), SLA > 99,99%, низкий порог вхождения. Футуристический прогноз: мониторинг в каждый дом, детектор аномалий, метаданные. И да, машина времени в докладе тоже есть.

Legacy в коробочке. Dev-среда на базе Kubernetes

Новые микросервисы появляются, но монолит никуда не исчезает. Мы в Avito разрабатываем и деплоим сервисы с помощью связки Docker и Kubernetes. Зачастую интегрировать монолит с сервисами довольно проблематично. А что, если его тоже завернуть в Docker+Kubernetes и применять те же практики, что и для микросервисов? В докладе Ильи Сауленко – ответы на вопросы о том, как уместить legacy-приложение вместе с базами и sphinxsearch в изолированной коробочке, сократить различия между окружениями и не забыть про Developer Experience. Будет полезно командам, планирующим или переживающим распил монолита и всем, кому приходится работать со сторонними legacy-системами.

Управление секретами в кластере Kubernetes при помощи Hashicorp Vault

В следующем докладе Сергей Носков рассказал об управлении секретами в кластере Kubernetes при помощи Hashicorp Vault. В видео приведен краткий обзор решения, рассмотрены случаи автоматического и безопасного управления секретами с помощью Puppet + Hiera. Особое внимание уделено встроенным секретам Kubernetes, проблемам управления ими и недостаткам существующих решений для получения секретов из Vault. Рассказано, как мы устранили эти недостатки с помощью простого самописного решения.

От сырых данных до отчета. Архитектурные подходы в проекте «Автотека»

С помощью нашего нового сервиса «Автотека» можно проверить историю автомобиля по VIN-номеру. В этом видео Николай Балакирев рассказывает об архитектурных подходах Avito, которые были реализованы в проекте. Почему мы стали использовать микросервисы для этой задачи? И что же мы сделали для того, чтобы потребитель получал нужную и актуальную информацию менее, чем за секунду? О построении сервиса, который может за это время посетить более 10 сторонних API, извлечь заранее собранные данные, проверить источники со статичной информацией, и, наконец, произвести слияние по определенному набору правил, смотрите в докладе.

Микросервисы для Machine Learning

У нас было 30 миллионов активных объявлений, 20 миллионов активных пользователей, 1,2 миллиарда событий и команда, которая реализует практическое машинное обучение. Что дальше? Смотрите видео, в котором Дмитрий Ходаков рассказывает две истории: о том, как традиционные микросервисы можно использовать для системы раздачи контента на рекомендациях и применения моделей в реальном времени, и о том, как мы распилили монолит пайплайна нашей рекомендательной системы на микросервисы. Click to play!

Микросервисы в продакшн. Kubernetes

И конечно, на РИТ++ не обошлось без практических занятий. Наши коллеги из Openprovider Елена Граховац и Игорь Должиков провели для всех желающих мастер-класс «Микросервисы в продакшн». Он состоял из двух частей.

Часть I:

— некоторые вопросы разработки микросервисов;
— написание сервисов на Go.

Часть II:

— подготовка инфраструктуры;
— релиз сервисов в Kubernetes с использованием CI/CD.
Мастер-класс доступен в следующем видео, а вот ссылка на репозитории с его материалами.

Это все материалы с секции о микросервисах на РИТ++. Задавайте вопросы, если такие возникнут.

Автор: rafinirovannoe

Источник

Поделиться

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