LINUX.ORG.RU

Framework


2

1

Всего сообщений: 12

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

Группа Разработка

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

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

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

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

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

>>> Подробности

 , , ,

anonymous
()

Ergo Framework 2.1

Группа Разработка

Ergo Framework — фреймворк на основе акторов для создания микросервисов с использованием технологий и шаблонов проектирования Erlang/OTP в Golang

Фреймворк предоставляет разработчику гибкий инструментарий из мира Erlang для создания распределённых решений на языке Go с помощью готовых шаблонов проектирования gen.Application, gen.Supervisor и gen.Server. Поскольку в языке Go отсутствует прямой аналог процесса Erlang, то во фреймворке используются goroutine как основы для gen.Server с обёрткой recover для возможности обработки исключительных ситуаций.

Код проекта распространяется под лицензией MIT.

Ключевые новшества в этом релизе:

  • сompression;
  • proxy с поддержкой оконечного (end-to-end) шифрования;
  • gen.Raft - реализация алгоритма консенсуса Raft;
  • множество других новшеств и улучшений.

>>> Подробности

 , , , ,

ergo
()

Symfony 5.0

Группа Интернет

Сегодня на конференции SymfonyCon в Амстердаме был представлен пятый релиз свободного php-фреймворка Symfony, использующего модель MVC. В списке использующих Symfony проектов есть достаточно много популярных веб-приложений, таких как Drupal (CMS), Joomla (CMS), Facebook (SDK), Google API (SDK), phpBB, phpMyAdmin и другие. Среди 269 нововведений можно выделить 2 новых компонента:

  • String — компонент для объект ориентированной работы со строками с абстракцией данных #33553
  • Notifier — компонент для отправки уведомлений по различным каналам (email, SMS, ...) #33687

>>> Подробности

 , , , ,

linuks
()

Вышла новая версия 0.2.3 веб-фреймворка GNU Artanis на языке Scheme

Группа GNU's Not Unix

Фреймворк написан на реализации языка Scheme — Guile Scheme и предназанчен для создания динамических веб-сайтов, веб-приложений, веб-сервисов и веб-ресурсов.

Фреймворк также предоставляет инструменты для работы с БД, шаблонами, сессиями, кэшированием, URL-remapping для RESTful и т.д.

Само название Artanis происходит от обратного Sinatra — веб-фреймворка на Ruby.

Artanis похож на такие веб-фреймворки, как Ruby Sinatra, Python Flask и Java Spark.

Имя главного разработчика — Nala Ginrut, опять же от обратного Alan Turing.

Анонс: http://lists.gnu.org/archive/html/artanis/2018-03/msg00000.html

>>> Подробности

 , , ,

mimimimi
()

Symfony 4.0

Группа Интернет

Состоялся четвертый релиз свободного php-фреймворка Symfony, использующего модель MVC. В списке использующих Symfony проектов есть достаточно много популярных веб-приложений, таких как Drupal (CMS), Joomla (CMS), Facebook (SDK), Google API (SDK), phpBB, phpMyAdmin и другие. Только за последний год в проект было принято более 3000 коммитов от 300 разработчиков. В числе изменений и нововведений:

( читать дальше... )

>>> Подробности

 , , , ,

linuks
()

Google представил открытую библиотеку Abseil для разработчиков на C++

Группа Google

В понедельник Google выпустил исходные коды библиотеки Abseil, созданной для того, чтобы значительно дополнить стандартную библиотеку языка C++. Данный код на протяжении многих лет использовался как базовая библиотека при разработке закрытого ПО, но был вынесен в отдельный открытый проект для упрощения открытия исходных кодов и разработки других библиотек, например, protobuf, grpc и tensorflow. Код распространяется под лицензией Apache 2.0.

Библиотека собирается с помощью bazel — системы сборки с открытым кодом, которая используется в Google. Данная система сборки позволяет точно контроллировать зависимости и получать воспроизводимые артефакты, но достаточно неудобна для повседневного использования. Но библиотека предполагает статическую линковку, так что её интеграция в любую систему сборки будет тривиальной.

Интересные части библиотеки:

  • absl::Mutex — примитив синхронизации, который одновременно может служить мьютексом, condition variable и read-write-блокировкой. Данный класс был разработан до появления C++11, но не был заменён std::mutex и его аналогами, так как предоставляет менее ошибкопорождающий интерфейс.
  • Бекпорты некоторых возможностей C++14/C++17 для компиляторов, поддерживающих только C++11: absl::make_unique, absl::optional, absl::any, absl::span, absl::string_view. При этом при сборке новым компилятором большинство absl:: типов будут обычным typedef для библиотечных.
  • «Стандартный» набор функций работы со строками: split, join, replace, объединение строк, перевод чисел в строки и обратно.
  • Функции и классы для работы с временем и промежутками времени (по сути дублирующие аналоги из std::chrono); 128-битный целочисленный тип данных; InlinedVector, позволяющий хранить маленькие массивы без выделения памяти; и прочее.

В данный момент список не очень большой, но библиотека постоянно будет дополняться.

>>> Подробности на opennet

 , , ,

vzzo
()

Webasyst — PHP-фреймворк (платформа) для разработки веб-приложений

Группа Open Source

Webasyst представляет собой инструмент для авторизации пользователей, регулирования прав доступа, маршрутизации, создания сайтов, CSS-инструментарий для создания веб-интерфейсов.

  • Много приложений, единый вход — единый многопользовательский бекенд с набором установленных в него приложений
  • Создание сайтов, мультисайтов
  • Фреймворк разработан в соответствии с принципом проектирования MVC
  • Установка практически на любой хостинг
  • Установка новых приложений в один клик — системное приложение «Инсталлер» позволяет устанавливать в уже работающий Webasyst новые приложения из репозитория фреймворка одним щелчком по кнопке «Установить»
  • Smarty, jQuery, jQuery UI и jQuery Mobile входят в базовый состав фреймворка и готовы к использованию
  • Гибкие инструменты для настройки прав доступа к приложениям и их данным для пользователей и групп пользователей
  • Скоро будет реализована единая точка входа для запросов к API, которые будут маршрутизироваться на нужное приложение. Будет предложен единый рекомендуемый формат упаковки данных в API-запросы.

>>> Подробности

 ,

gray
()

3D-движок и фреймворк PixelLight

Группа Open Source

PixelLight является кроссплатформенным фреймворком для разработки 3D-игр, приложений для интерактивного моделирования или визуализации. Основан на гибкой системе графсцен (универсальная структура данных в основном использующая векторную графику), что позволяет создавать и визуализировать любые 3D-сцены.

В целях гибкости и расширяемости, PixelLight написан на C++. С его помощью можно создавать приложения для различных платформ и компонентов (рендеринг, звук, физика, сети, сценарии и т.п.).

Поддерживаемые платформы: GNU/Linux, Maemo5, Microsoft Windows (XP, Vista, 7).

Возможности:

Рендеринг

  • OpenGL;
  • OpenGL ES 2.0;
  • отложенный рендеринг.

Плагины

  • Звук: OpenAL, FMOD и Fmodex;
  • Физика: Newton, ODE и PhysX;
  • Поддержка для устройств ввода (например, SpaceNavigator, Wiimote).

API

  • Полностью написан на C++;
  • Хорошо структурированный и понятный код из-за строго объектно-ориентированной конструкции;
  • Расширенная система классов, компонентов и плагинов, что делает PixelLight очень гибким, портативным, модульным и достаточно универсальным;
  • Гибкая система графсцен, в которой легко создавать даже очень сложные сцены;
  • Продвинутый фреймворк, позволяющий «просто начать» быструю разработку приложений.

Инструменты

  • плагин экспорта Autodesk 3ds Max, с возможностью экспорта всей сцены с узловыми точками, петлями, текстурами и результирующим морфингом одним щелчком мыши.

Лицензия - LGPL3, GPL3

Скачать (19,3 Мб)

>>> Подробности

 , , , lgpl3, ,

amorpher
()

Выпущена Google Collections Library 1.0 final

Группа Java

30 декабря Google™, Inc объявил о выпуске финальной версии №1.0 собственной библиотеки коллекций GCL, расширяющей и дополняющей стандартный набор JCF

Видеоуроки по использованию библиотеки http://video.google.ru/videosearch?q=...

Ссылки на остальные известные библиотеки для работы с коллекциями: http://jaggregate.sourceforge.net/
http://commons.apache.org/collections
http://fastutil.dsi.unimi.it
http://pcj.sourceforge.net
http://javolution.org/doc/Javolution-...
http://trove4j.sourceforge.net
http://www.sosnoski.com/opensrc/tclib...
http://www.jezuk.co.uk/cgi-bin/view/m...

>>> Подробности

 , , , , jcf

Karapuz
()

Релиз Kohana 3.0

Группа Open Source

Вышла новая версия php-фреймворка Kohana.

Отличительные особенности:

  • строгое ООП, реализованное на PHP5;
  • 100% UTF-8 совместимость;
  • использует MVC модель;
  • структура аналогична CodeIgniter.

>>> Подробности

 , , ,

VladimirMalyk
()

Релиз Kohana 2.3

Группа Open Source

Вышла новая версия php-фреймворка Kohana. Исправлены ошибки, реализованы новые возможности.

Отличительные особенности фреймворка:

  • строгое ООП, реализованное на PHP5
  • 100% UTF-8 совместимость
  • использует MVC модель
  • структура аналогична CodeIgniter

>>> Подробности

 , ,

VladimirMalyk
()

Play!

Группа Java

Фреймворк Play! облегчает создание веб-приложений с помощью платформы Java. Как преимущество разработчики фреймворка преподносят отсутствие в их фреймворке вездесущего контейнера сервлетов, Tomcat. Это позволяет создать им реально высокомасштабируемый, RESTfull ориентированный сервер приложений. Подробности тут.

>>> Подробности

 , ,

anonymous
()