Oracle CX Industry Framework: A Helidon Flight (with Aerobatic Stunts!)
As the software architecture underlying Oracle Customer Experience Industry Solutions, the Oracle Customer Experience Industry Framework (CXIF) is responsible for efficiently and scalably powering many of Oracle’s industry-specific offerings.
Based on a microservices architecture implementing a domain-driven design style, CXIF is built with Helidon: the Oracle-backed cloud-native, open‑source set of Java libraries for writing microservices that run on a fast web core powered by Netty. The entire CXIF architecture, pictured below, is implemented with Helidon.
The CXIF team chose Helidon SE, the reactive edition of Helidon, for small fast reactive pure Java microservices. One motivation for that choice, two years ago, was the difficulty of dealing with Common Vulnerabilities and Exposures (CVEs) in Spring Boot. Because of its extensive dependency graphs, and patching policies, Spring Boot cost the CXIF team excessive disruption and effort contending with irrelevant CVEs.
Together with Helidon, GraalVM is also a critical technology to the CXIF architecture. CXIF uses GraalVM Native Image to create minimum-size, precompiled executable images of its microservices. These images are further compressed using UPX compression to yield Docker container images of size <50MB for use with Oracle Cloud Infrastructure Container Engine for Kubernetes (OKE). This enables extremely fast startup time for containerized microservices, allowing CXIF to dynamically start containers running microservices on-demand as requests come in! Quite a stunt indeed.
“It’s a killer feature for security [Helidon binary executables in minimal Docker containers]. Number two is elastic scaling.” — Florian Wiesner, Architect, Oracle CX Industry Solutions
Telecommunications was the first industry to use CXIF, requiring the management of large numbers of subscribers. For example Oracle Communications’ Order and Service Management product uses CXIF, which has been in production for two years. Target volumes for CXIF are several thousand concurrent requests, and tens of thousands of transactions per minute.
CXIF architect Florian Wiesner concludes “Helidon is absolutely nice. Graal is absolutely nice. The combination is terrific. As a developer or architect, one can have the feeling that Oracle is cool.”
Readers are encouraged to stay tuned, and watch this space, for more Helidon Flight success stories in this series.