Skip to main content

Introduction

ActiveJ is a set of orthogonal minimalist libraries, with as few dependencies as possible with respect to each other, that can be used together or separately. This was the design goal - not to develop yet another framework that would force the user to use it on an all-or-nothing basis, but instead to give the user as much freedom as possible in terms of choosing library components.

ActiveJ consists of a range of libraries, ranging from dependency injection and high-performance asynchronous I/O (inspired by Node.js) to application servers and big data solutions. It is designed to be self-sufficient (with no third-party dependencies), simple, lightweight, and provide competitive performance.

You can utilize ActiveJ to build scalable web applications, distributed systems, and deploy it for high-load data processing.

Core Features​

The distinguishing features of ActiveJ are simplicity, high performance, and consistency. As a result, it is fast, lightweight, and does not contain tons of abstractions and third-party dependencies. Moreover, ActiveJ offers a simple programming approach, prioritizing business logic over framework specifications.

Core components:​

  • ActiveJ Inject. A lightweight Dependency Injection library with a rich toolkit. Can be used as a stand-alone library.
  • Async I/O core: Promise, Eventloop, Net.
  • Fast asynchronous data stream processing: Datastream, CSP.
  • High-performance HTTP components including asynchronous HTTP clients and servers. Can be used independently of ActiveJ.
  • Bootstrapping and lifecycle management utils: Launcher, Service Graph, JMX, Triggers.

Bytecode manipulation tools:​

Cluster technologies:​

  • ActiveJ RPC - high-performance binary protocol for developing distributed applications and microservices solutions
  • ActiveJ FS - provides effective tools for developing scalable local or remote file storages with a support of data redundancy, rebalancing, and resharding.

ActiveJ Background​

The ActiveJ project is an improved version of the DataKernel framework. Since the release of v3.0, it has been greatly improved and restructured.