Введение
ActiveJ - это амбициозная платформа, которая была создана с нуля и нацелена на переопределение современного программирования на Java. ActiveJ - результат разработки действительно высоконагруженной экосистемы для AdKernel, рекламной платформы Real Time Bidding , обрабатывающей сотни миллиардов запросов ежедневно. ActiveJ обладает богатым стеком технологий без зоопарка разнообразных решений, скомпонованных вместе с чрезмерными абстракциями. Это полнофункциональная высокопроизводительная альтернатива Spring, Micronaut, Apache Spark, Quarkus и другим решениям.
Основные возможности
Отличительными особенностями ActiveJ являются простота, высокая производительность и последовательность. В результате он быстрый, легкий и не содержит тонны абстракций и сторонних зависимостей. Более того, ActiveJ предлагает уникальный подход к программированию, отдавая приоритет бизнес-логике, а не спецификациям фреймворка.
Структура платформы
ActiveJ состоит из свободно соединенных компонентов, которые дополняют и расширяют возможности друг друга. Некоторые из них можно использовать в качестве автономных библиотек .
Основные компоненты:
- ActiveJ Inject. Легкая библиотека Dependency Injection с мощными инструментами. Может использоваться как отдельная библиотека.
- Ядро Async I/O:
Promise
,Eventloop
,Net
. - Молниеносная и асинхронная обработка потоков данных:
Datastream
,CSP
. - Высокопроизводительный компонент HTTP , включает асинхронные HTTP клиенты и серверы. Может использоваться независимо от ActiveJ.
- Утилиты загрузки и управления жизненным циклом:
Launcher
,Service Graph
, JMX, Triggers.
Средства манипулирования байткодом:
- ActiveJ Serializer - самые быстрые в мире сериализаторы на базе JVM, реализованные с генерацией байткода во время выполнения .
- ActiveJ Codegen - динамический генератор байткода без сложности прямого манипулирования байткодом . Отличается упрощенным и лаконичным API.
- ActiveJ Specializer - уникальная технология, которая автоматически значительно ускоряет ваш код, оптимизируя его для JVM.
Кластерные технологии:
- ActiveJ RPC - молниеносный двоичный протокол для разработки распределенных приложений и микросервисных решений.
- ActiveJ FS - предоставляет эффективные инструменты для разработки масштабируемого удаленного хранилища файлов с поддержкой избыточности данных, ребалансировки и решардинга.
Предистория ActiveJ
Проект ActiveJ представляет собой усовершенствованную версию фреймворка DataKernel. После выхода v3.0 он был значительно улучшен и реструктурирован.