A lightweight open-source microservice framework. Develop microservices with Java EE technologies. Migrate existing Java EE applications to microservices and cloud-native architecture.

KumuluzEE is Java Duke's Choice Award Winner

KumuluzEE has won the prestigious 2015 Java Duke's Choice Award. The Duke's Choice Award is the Java community equivalent of winning an Oscar. The award celebrates extreme innovation using Java technology. The primary judging criteria for this prestigious award is innovation, putting small developer shops on equal footing with global giants. Java Duke's Choice Award winners are recognition as an elite member of the Java ecosystem. Previous award winners include Hadoop, Jenkins, TomEE, and several other well-known products.

KumuluzEE is MicroProfile 1.2 compliant

KumuluzEE is a member of the MicroProfile and is compliant with MicroProfile 1.2 specification. Support for MicroProfile 1.3 is coming soon. The Eclipse MicroProfile is a baseline platform definition that optimizes Enterprise Java for a microservices architecture and delivers application portability across multiple MicroProfile runtimes.


Highlights


Fastest start-up
Smallest JAR
Fully cloud-native
Optimized for Docker and Kubernetes

Why KumuluzEE


Develop pure Java EE based microservices and pack and execute them as stand-alone (Fat/Uber) JARs.

Develop microservices using standard Java EE APIs and technologies.

Leverage your existing Java EE knowledge and extend it to cloud-native architecture.

Gradually migrate existing Java EE applications to microservices and cloud-native architecture.

KumuluzEE is a cloud-native, pure and open microservice framework. Light-weight, small footprint, rapid start, container-ready.

KumuluzEE is not a traditional Java EE app server, neither does it embed an app-server inside microservices. It provides configurable Java EE environment inside stand-alone JARs, which only require JRE (Java Runtime Environment) to execute.

KumuluzEE generates pure, efficient Java microservices, which start considerably faster and have lower footprint than the majority of other Java microservice frameworks.

KumuluzEE is fully open, standard-based and extensible.

Zero lock-in. KumuluzEE does not require any specific code. Everything is configured in pom.xml. You have the complete control over Java EE components you are using.

KumuluzEE allows you to extend your microservices with common cloud-native patterns.

KumuluzEE provides full support for config, discovery, health, logging, security, fault tolerance, circuit-breakers, event streaming, metrics, REST patterns and more.

KumuluzEE microservices can be packed as Docker containers and provide full support for container environments.

KumuluzEE microservices are fully compatible with Kubernetes.

Service discovery, configuration, health, metrics and other projects support specifics of Kubernetes and have been thoroughly tested.

KumuluzEE microservices provide first-class support for API gateways.

Service discovery, configuration and other projects can be configured to work with different API gateways.

KumuluzEE is fully integrated with KumuluzAPI, an innovative microservice API Management and other Kumuluz and KumuluzDigital products.

What people are saying about KumuluzEE

KumuluzEE is a great community effort to power Java EE API based microservices, especially on the cloud.

~ Reza Rahman, Senior Java Technologist, Author, Speaker

Read more

Example code


@Path("/orders")
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_JSON)
@RequestScoped
public class OrdersResource {

    @PersistenceContext(unitName = "books")
    private EntityManager em;

    @GET
    @Path("/{id}")
    public Response getOrder(@PathParam("id") Integer id) {

        BookOrder o = em.find(BookOrder.class, id);

        if (o == null)
            return Response.status(Response.Status.NOT_FOUND).build();

        return Response.ok(o).build();
    }
}
					

<properties>
    <kumuluz.version>2.4.1</kumuluz.version>
</properties>

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>com.kumuluz.ee</groupId>
            <artifactId>kumuluzee-bom</artifactId>
            <version>${kumuluz.version}</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

<dependencies>
    <!-- MicroProfile 1.0 -->
    <dependency>
        <groupId>com.kumuluz.ee</groupId>
        <artifactId>kumuluzee-microProfile-1.0</artifactId>
    </dependency>

    <dependency>
        <groupId>com.kumuluz.ee</groupId>
        <artifactId>kumuluzee-jpa-hibernate</artifactId>
    </dependency>
</dependencies>
	              	

What is KumuluzEE

KumuluzEE is a lightweight framework for developing microservices using standard Java EE technologies and migrating existing Java EE applications to microservices. KumuluzEE packages microservices as standalone JARs. KumuluzEE microservices are lightweight and optimized for size and start-up time. They fit perfectly with Docker containers.

Microservices with Java EE

A standard approach for deploying Java EE applications is packing all components into a single EAR/WAR archive and deploying the archive on the application server. This leads to monolithic architectures which make applications difficult to maintain and scale in cloud (PaaS) environments. The microservice architecture addresses these shortcomings by decomposing an application into a set of stateless microservices. Each microservice has a well-defined functionality and an interface for communication with other services.

They trust us

Want to be listed here? Please contact us!