🔷 𝗨𝗯𝗲𝗿’𝘀 𝗔𝗿𝗰𝗵𝗶𝘁𝗲𝗰𝘁𝘂𝗿𝗲: электростанция, которая ежедневно обрабатывает миллионы запросов и постоянно развивается для оптимального обслуживания пользователей.

🔷 𝗞𝗲𝘆 𝗖𝗼𝗺𝗽𝗼𝗻𝗲𝗻𝘁𝘀: знакомое приложение такси поддерживается многогранной технологией, которая включает брандмауэр веб-приложений (WAF), балансировщик нагрузки (LB), Kafka REST API и веб-сокеты.

🔷 𝗥𝗶𝗱𝗲 𝗕𝗼𝗼𝗸𝗶𝗻𝗴 𝗣𝗿𝗼𝗰𝗲𝘀𝘀:

1️⃣ Пользователь бронирует поездку, и приложение перенаправляет запрос на сервер запросов.
2️⃣ Сервер запросов запрашивает у сервера поставок ближайшего водителя.
3️⃣ Сервер поставок использует API-интерфейс Kafka REST для получения последних данных о местонахождении водителя. .
4️⃣ Сервер заявок связывается с ближайшим водителем. После принятия ваша поездка подтверждена!

🔷 𝗦𝗰𝗮𝗹𝗮𝗯𝗶𝗹𝗶𝘁𝘆 𝗮𝗻𝗱 𝗥𝗲𝗹𝗶𝗮𝗯𝗶𝗹𝗶𝘁𝘆: архитектура Uber спроектирована так, чтобы справляться с интенсивным трафиком и обеспечивать плавная езда, даже если по пути попадаются неровности.

🔷 𝗗𝗲𝗲𝗽 𝗗𝗶𝘃𝗲 𝗶𝗻𝘁𝗼 𝗞𝗲𝘆 𝗖𝗼𝗺𝗽𝗼𝗻𝗲𝗻𝘁𝘀:

Брандмауэр веб-приложений (WAF): виртуальный щит, защищающий от вредоносного веб-трафика.

Балансировщик нагрузки: управляет веб-трафиком между несколькими серверами для достижения оптимальной производительности.

Kafka REST API: использует данные о местоположении от водителей, выступая в качестве нервного центра системы.

Веб-сокеты: обеспечивают связь в реальном времени между серверами Uber и пользователями.

Посмотрите анимированную диаграмму ниже, чтобы лучше понять технологическую машину Uber.

Спасибо Chandresh Desai за эту блестящую иллюстрацию! 👇😎

#системный дизайн #программная инженерия #архитектура #uber