Яндекс выложил в опенсорс userver – инструмент для создания высоконагруженных приложений

Яндекс опубликовал исходный код и документацию фреймворка userver. Это первый открытый набор инструментов, который позволяет создавать высоконагруженные приложения на языке С++ и протестирован на масштабах уровня Яндекса. Userver используют в Яндекс Go, Лавке, Доставке, Маркете, финтех-проектах и многих других сервисах компании. Фреймворк предоставляется по открытой лицензии Apache 2.0.Userver лучше всего подходит для разработки приложений с микросервисной архитектурой.
Яндекс выложил в опенсорс userver – инструмент для создания высоконагруженных приложений

Яндекс выложил в опенсорс userver – инструмент для создания высоконагруженных приложений. Фото: СС0

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

Микросервисы автономны, поэтому приложение на подобной архитектуре легко обновлять и добавлять в него новые функции. Так, микросервис поиска водителя на заказы в Такси можно использовать для схожей задачи — например поиска курьера для выполнения заказов Яндекс Доставки. То же самое можно проделать и с расчётом времени прибытия водителя или курьера и многими другими задачами. 

Из сообщения одного из авторов фреймворка и руководителя группы бэкенд-разработки решений для продуктовых команд RideTech и eCom Антона Полухина:

«Когда мы переходили на микросервисы, мы понимали, что новый фреймворк должен быть как можно проще для разработчиков и бизнеса. Поэтому userver создавали с акцентом на надёжность и удобство, а внутри него есть всё необходимое для разработки, диагностики, мониторинга, отладки и экспериментов. Например, userver подсказывает как исправить ошибки ещё на этапе компиляции, умеет работать с разными базами данных, менять параметры на лету и так далее. Он хорошо подходит для разработки приложений как в небольших, так и в крупных компаниях. И с помощью userver даже новичок может за неделю написать новый микросервис».

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

Подробнее узнать про фреймворк userver можно на Хабре.

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

Статьи по теме

Больше интересного

Актуальное

В ITSM 365 стало возможно добавлять наблюдателей в заявке
Хакеры начинают сканирование на наличие уязвимостей через 15 минут после их раскрытия
В Яндекс Картах появились 3D-модели новостроек
Ещё…