ActiveJ Platform Overview

ActiveJ is an ambitious platform that was built from the ground up and aims to redefine modern Java programming. ActiveJ is the result of developing a genuinely high-load ecosystem for AdKernel, a Real Time Bidding ad-serving platform processing hundreds of billions requests daily. ActiveJ features a rich stack of technologies without zoo of diverse solutions tailored together with excessive abstractions. It’s a full-featured high-performance alternative to Spring, Micronaut, Apache Spark, Quarkus, and other solutions.

Core ActiveJ Features

ActiveJ is a programming platform for the developers who strive for technical excellence and are tired of sub-optimal solutions. ActiveJ distinctive features are simplicity, raw performance and consistency. As a result, it is fast, lightweight and doesn’t feature tons of abstractions. Moreover, ActiveJ offers a unique programming approach, giving priority to business logic instead of framework specifications.

ActiveJ Platform Structure

ActiveJ consists of loosely coupled components that complement and empower each other. Some of them can be used as stand-alone libraries.

Core components:

  • ActiveInject. Lightweight Dependency Injection library with powerful tools. Can be used as a stand-alone library.
  • Async I/O core: Promise, Eventloop, Net.
  • Lightning-fast and asynchronous data stream processing: Datastream, CSP.
  • High-performance HTTP component, features asynchronous HTTP clients and servers. Can be used independently of ActiveJ.
  • Bootstrapping and lifecycle management utils: Launcher, Service Graph, JMX, Triggers.

Bytecode manipulation tools:

  • ActiveSerializer. World’s fastest JVM-based serializers implemented with runtime bytecode generation.
  • ActiveCodegen. Dynamic bytecode generator without the complexity of direct bytecode manipulation. Features a streamlined and concise API.
  • ActiveSpecializer. A unique technology that automagically significantly speeds up your code by optimizing it for JVM.

Cluster technologies:

  • ActiveRPC. A lightning-fast binary protocol for developing distributed applications and microservices solutions
  • ActiveFS. Provides efficient tools for developing scalable remote file storage with support of data redundancy, rebalancing, and resharding.

ActiveJ Background

ActiveJ project is an enhanced version of the DataKernel framework. After v3.0 release it was significantly improved and restructured.