Демонстрация работы Авито на примере пути объявления

Пристрой

кота

Проследи путь объявления и узнай, как устроена работа Авито

Авито — это 150 000 000 актуальных объявлений: животные, квартиры, машины, резюме, техника и тысячи других вещей.

Но это не просто доска объявлений — за ней стоит работа большой команды.

  • 2000сервисов
  • 5500сотрудников
  • 4дата-центра
  • 100+релизов в день

Подать объявление на Авито проще простого, пара кликов — и готово!

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

  • Москва
  • Животные
  • Кошки
  • Не породистые

Отдам кота

Добавить в избранное

Интересуется технологиями, любит жать на кнопки.

Как продать что-нибудь ненужное?

Hужно купить что-нибудь ненужное, нужны отлаженные процессы и функциональность. Поэтому в Авито всё построено на взаимодействии горизонталей и вертикалей.

Структура Авито

Вертикали пилят уникальные фичи с тонкими настройками под определённые категории и особенности объявлений.

Goods & Transactions
Товары
размеры
Re, Jobs, Services & Auto
Работа
офис /
удалёнка
Недвижимость
количество
комнат
Услуги
дома /
в салоне
Авто
марки
авто
Кластер из горизонтали добавил фильтры для поиска
Вертикали добавили спецификацию
Вау, получились идеальные фильтры!

Горизонтали создают инструменты, модели и функциональность, которые используются во всех объявлениях.

Advertising / Monetization
Search & Recommendation
Trust & Safety
Tech Platform

Работая сообща, они пилят идеальные фичи. Например, кластер из горизонтали сделал фильтры для поиска, а вертикали добавили спецификацию.

Goods & Transactions
Товары
размеры
Re, Jobs, Services & Auto
Работа
офис /
удалёнка
Недвижимость
количество
комнат
Услуги
дома /
в салоне
Авто
марки
авто

Идеальные фильтры

фильтры
Search & Recommendation

Платформа

Путь объявления начинается с Tech Platform — глобальной технической базы, которая обеспечивает работу всей экосистемы Авито.

1. Tech Platform

Включаем сотни микросервисов

Когда человек создаёт объявление на мобильном устройстве, оно попадает в кластер Mobile.

Кластер Mobile

Гарантируем производительность мобильной разработки

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

Кластер предоставляет продуктовым командам инструменты для разработки, развивает CI/CD и улучшает Developer Experience.

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

Где рекомендательное письмо?

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

Кластер Infrastructure

Строим надёжную инфраструктуру

Кластер Infrastructure развивает железную, сетевую, виртуальную и облачную инфраструктуру из тысяч серверов, сотен терабайт и тысячи инстансов БД, в которой хранятся все данные Авито: от уровня Bare Metal до уровня сервисов.

Задачи разнятся от деплоя новых инстансов и мониторинга до проектирования геораспределённых гибридных сетапов и разработки автоматизированных систем управления, aka IaaS.

Уверен, в таких делах не обойтись без планирования...

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

А что с оптимизацией?

Исследуем всё, что может оптимизировать и упростить работу. Например, изучаем новые версии баз данных или придумываем, как автоматизировать инфраструктуру.

А вы разбираетесь в архитектуре?

Работа объявления (и моя судьба) зависят от разных сервисов. Какой из них нужен — определяет обращение к архитектуре. В подаче объявления это, например, сервисы кластера Seller X.

Кластер Architecture

Обеспечиваем стабильность и масштабируемость

Кластер Architecture развивает высокоуровневую архитектуру, чтобы с ростом компании не замедлялась скорость доставки продуктовых фич и их техническое качество.

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

Dev tools

  • PааS CLI
  • PaaS Dashboard
  • libraries
  • minikube
  • dotenv
  • reloader
  • brief

Runtime tools

  • Elastic
  • prometheus
  • jaeger
  • sentRy
  • harbor

Cloud, Provisioning, Runtime

  • jide
  • Redis Operator
  • Helm
  • ingress controller
  • data-bus
  • kafka
  • navigator
  • Netramesh
  • VAULT
  • soc
  • fluentbit
  • kubernetes
  • calico
  • Docker
  • debian
  • puppet
«

У нас 2000+ микросервисов, несколько дата-центров, больше 10 000 000 запросов в минуту — здесь важна стабильность, масштабируемость и в то же время простота и удобство для использования на множестве платформ.

»

Именно здесь инициировали и распилили монолит! РАСПИЛИЛИ МОНОЛИТ! со стороны бэка и не дали ему заглохнуть:

  • перевели легаси в k8s
  • организовали локальное взаимодействие
  • к минимуму свели важность монолита для компании

2019 год: все 1,7 млн запросов в минуту идут на монолит

2023 год: 10 млн запросов в минуту распределяются по микросервисам

МОНОЛИТ