«Яндекс» выложил в открытый доступ Userver — инструмент для разработки приложений с микросервисной архитектурой Статьи редакции

Компания использует его, например, в «Яндекс Go», «Лавке», «Доставке», «Маркете» и других сервисах.

  • Яндекс опубликовал исходный код и документацию фреймворка Userver. Его могут использовать все разработчики по открытой лицензии Apache 2.0, инструмент доступен на GitHub.

  • Userver подходит для разработки приложений с микросервисной архитектурой. Изначально его делали для «Такси», и с его помощью компания перешла с монолитного приложения на архитектуру, которая позволяет разрабатывать отдельные независимые компоненты — микросервисы — и использовать их в разных приложениях.

  • Например, микросервис поиска водителя в «Такси» можно использовать для поиска курьера в «Доставке». То же самое можно делать с похожими задачами — расчётом времени прибытия и другими. Микросервисы автономны, поэтому в приложения можно легко добавлять новые функции и обновлять его.
  • В Userver есть всё необходимое для разработки, диагностики, мониторинга, отладки и экспериментов, говорит Антон Полухин, один из авторов фреймворка и руководитель бэкенд-разработки решений для продуктовых команд RideTech и eCom. Например, он подсказывает как исправить ошибки ещё на этапе компиляции, умеет работать с разными базами данных и другое, а также подходит для разработки приложений как в больших, так и в маленьких компаниях.

0
112 комментариев
Написать комментарий...
Вадим Д.

И снова порадуюсь за Яндекс. Именно за их разработки и предоставление к ним доступа.
Молодцы на этой неделе! 🤘🏻
Да, сливы данных никуда не делись, но это реально другая история.

Ответить
Развернуть ветку
Вася Пражкин
Да, сливы данных никуда не делись

Раньше текло из одного места(монолита), а теперь потечет из всех микросервисов.

Ответить
Развернуть ветку
Антон Монин

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

Ответить
Развернуть ветку
MEGAtraXXXer666

Да, другая история, которая перекрывает все истории, все верно

Ответить
Развернуть ветку
Невероятный Блондин

Ты не понимаешь, у них все головы разъехались, кодить некому.
А так они выложили на гитхаб, и будут на халяву ошибки, реквесты и дисскусии получать.

Ответить
Развернуть ветку
3 комментария
Mr Black

Угомонись,там сами сотрудники обосрались,челофактор никуда не денешь.
Система то работает.

Ответить
Развернуть ветку
Anton Prokhorov

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

Ответить
Развернуть ветку
shencrypto

дураков нету )

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
Boris Medvedev

зачем писать в 2022 году фреймворк для микросервисов на C++?

Ответить
Развернуть ветку
Павел Елисеев

Поддерживаю. C++ хорош для CPU&Memory bounded задач. Если ты все равно ждешь сеть, зачем тут C++? Есть множество более высокоуровневых и удобных языков для этой задачи.

Ответить
Развернуть ветку
20 комментариев
Рамир Собалов

C++ даёт максимум возможностей выдоить из ресурсов все соки, чем другие языки, а хороший капиталист обязан стремиться выдоить из всех средств производства максимум производительности, иначе это не капиталист, а чертила из леса. Да, можно отключить GC в java, можно написать на Си высоконагруженное и вызвать из питона, но если уж потрогал Си, зачем полумеры? Если уж взялся на Си, то берись за нормальный взрослый со всей выразительной мощью, если конечно ты не неосилятор. Тем более, что код на современном C++ короче любой этой вашей явы и тем более го.

И ГЛАВНОЕ: Капиталист, который не стремится максимально удешевить себестоимость продукции, выдаивая все ресурсы из средств производства любой ценой - чёрт сраный, а не капиталист. Большинство создателей сервисов и нормально-то сделать не могут - каждый ответ интерфейса по 100 долгих миллисекунд приходится ждать, им знания железа, структур данных, алгоримов не хватает даже на базовом уровне, что говорить про "выдаивание ресурсов". Если ты занят массовым обслуживанием людей своими серверами и вместо максимального выдаивания всех возможностей из существующих серверов пытаешься закупить их ещё - то ты алкаш с вокзала. Хороший капиталист всегда найдёт студентов за еду, любящих ассемблер, чем будет платить 300к/сек бестолковым разжиревшим го-говнокодерам, обросшим семьёй и ипотеками, у которых на выходе так или иначе копипаста с стековерфлоу.

Ответить
Развернуть ветку
2 комментария
Alexander Golubev

Если микросервис переваривает условно 100Krps, то почему бы и нет.

Ответить
Развернуть ветку
shencrypto

чтобы никто не заметил thread слива данных )

Ответить
Развернуть ветку
Вася Пражкин

Да, выбор не очевидный, мягко говоря. Но скорей всего просто у разрабов опыт по C++, вот и пишут на чем умеют. Но кому это надо в 2022-м, вопрос еще.

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
Pavel Penkov

в 2022 году, когда железо фиг купишь, достаточно актуально

Ответить
Развернуть ветку
Александр А.

Почему кот лижет яйца?
Потому что может!

Ответить
Развернуть ветку
Кирилл Таран

Потому что у Яндекса весь кор на плюсах по кастовым причинам

Ответить
Развернуть ветку
shencrypto

Бэкдор в подарок из коробки?

Ответить
Развернуть ветку
F-117

Я же правильно понимаю, что от разработки софта вы очень далеки? Проект с открытыми исходниками. В бэкдоре нет смысла - найдут.

Ответить
Развернуть ветку
15 комментариев
Никита Иванов

Уже полгода разрабатываем телеграм ботов с микросервисами на Яндекс функции. На самом деле это очень эффективно и экономно. Теперь на монолитную разработку обратно сложно перейти

Ответить
Развернуть ветку
Alex

Именно этого Яндекс от вас и добивается) теперь с него слезть будет сложно, а он будет диктовать условия)

Ответить
Развернуть ветку
15 комментариев
Denis

Микросервисы на плюсах, каеф

Ответить
Развернуть ветку
GanicusCsw

Хорошо, что Яндекс стал больше разработок выкладывать в открытый доступ

Ответить
Развернуть ветку
shencrypto

спасают то что есть перед скорым погружением

Ответить
Развернуть ветку
3 комментария
Mike R

Привет всем бывший коллегами из Я.Такси)) И поздравляю с релизом!

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
Alexander Golubev

Они пробовали. Вышло сильно медленнее.

Ответить
Развернуть ветку
2 комментария
Стас Иванов

Почему Userver, а не Я.server ?

Ответить
Развернуть ветку
Nikolay Matrosov
Ответить
Развернуть ветку
Драка вегетарианца с людоедом

скорее всего потому что это словослияние между User + server

Ответить
Развернуть ветку
sles

use&ver - юзайте и верьте

Ответить
Развернуть ветку
1 комментарий
Estakar

Ну так это не отдельное приложение или сервис, а инструмент

Ответить
Развернуть ветку
Marco Polo

ЯтьСервер
Ять от Блять
)

Ответить
Развернуть ветку
1 комментарий
shiva

unified
union
universal
u как фонетическое you

Ответить
Развернуть ветку
1 комментарий
Alexander Golubev

user + server?

Ответить
Развернуть ветку
1 комментарий
Dimitri Sloboda
Ответить
Развернуть ветку
Leo Need

Даёшь опенсорс!

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
Павел Егоров

У Полухина, кстати, весьма клевая книжка есть https://www.ozon.ru/product/razrabotka-prilozheniy-na-s-s-ispolzovaniem-boost-poluhin-anton-217046085/

Ответить
Развернуть ветку
Ильшат Ахметов

Можно ещё сливов лучше? Пора БД пополнять

Ответить
Развернуть ветку
Max Yankov

async/await в плюсы засунули? А кому это нужно кроме компаний, у которых зоопарк легаси на плюсах

Ответить
Развернуть ветку
Саша Молодцов

ну вот там уже день 32 форка и почти 400 звёзд. Кому-то интересно.

Ответить
Развернуть ветку
1 комментарий
Kirill Zaytcev

Когда начинаешь читать Яндекс выложил в открытый доступ...сразу думаешь о другом )

Ответить
Развернуть ветку
shencrypto

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

Ответить
Развернуть ветку

Комментарий удален модератором

Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
Ivan Moskalev

На плюсах. Мало кто сможет не отстрелить себе ногу такими микросервисами.

Ответить
Развернуть ветку
Aleksey

Посмотрел код, жесть полная там же C++ мне лучше повеситься чем писать так...

Ответить
Развернуть ветку
109 комментариев
Раскрывать всегда