Positionnée comme alternative à de nombreuses technologies Java, la plate-forme ActiveJ est présentée comme une pile technologique minimaliste, compatible tous standards et rapide pour le web, le cloud, les micro-services et les applications à forte charge. Constituée de composants faiblement couplés pour le traitement asynchrone, le traitement des entrées/sorties, la livraison web haute performance et les réseaux haute performance, la plate-forme ActiveJ, développée par l’éditeur éponyme, a l’ambition de remplacer Spring, Spark, Red Hat Quarkus, Micronaut, Vert.x et d'autres frameworks Java.

L'approche de la plate-forme ActiveJ est de donner la priorité à la logique métiers plutôt qu'aux spécifications du framework. Le projet open source ActiveJ a été créé comme un écosystème à haute performance pour la plate-forme AdKernel de soumission et de diffusion de publicité en temps réel, après les manques en la matière constatés par les développeurs dans les plates-formes et frameworks Java. ActiveJ 3.0, disponible depuis novembre et accessible sur Maven, a été utilisé dans des projets internes à AdKernel, et traite quotidiennement des milliards de requêtes.

Les composants d’ActiveJ

« ActiveJ a peu de dépendances avec des tiers », a expliqué l’éditeur, « et l’ensemble de ses composants peuvent également être utilisés de manière indépendante ». Parmi les composants d’ActiveJ, on trouve :

• ActiveInject : il s’agit d’une bibliothèque pour l'injection de dépendances légères.

• ActiveSerializer : ce composant fournit des sérialiseurs peu encombrants développés avec l'ingénierie bytecode. Une approche sans schéma est utilisée pour améliorer les performances.

• ActiveCodeGen : il s’agit d’un générateur de classe dynamique et de bytecode fonctionnant au sommet de la bibliothèque ObjectWeb ASM. Il permet de s’abstraire de la complexité de la manipulation directe du bytecode et de créer des classes personnalisées à la volée.

• ActiveRPC : ce protocole binaire haute performance permet de créer des applications distribuées nécessitant des connexions client-serveur efficaces entre les serveurs.

• ActiveFS : cette bibliothèque asynchrone légère pour le stockage évolutif de fichiers à distance prend en charge la redondance des données, le redimensionnement et le rééquilibrage.

• ActiveSpecializer : ce composant optimise le code de la JVM en vue d’améliorer la vitesse.