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.