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 the 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.

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.1.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.

KumuluzEE also provides extensions for developing common patterns in cloud-native architectures, including configuration, logging, discovery, circuit-breakers, metrics, security, event streaming and more.

KumuluzEE microservice framework

For creating microservices using JavaEE and packing them as Docker containers.

KumuluzEE REST

For implementation of common, advanced and flexible REST API functionalities and patterns. Includes support for exposing JPA entities through REST.

KumuluzEE Config

For dynamic centralized configuration (using ENV variables or config server, such as etcd or Consul).

KumuluzEE Logs

For advanced microservice framework for logging.

KumuluzEE Discovery

For dynamic service discovery (etcd or Consul). Fully compatible with Kubernetes.

KumuluzEE Metrics

For easy collection and reporting of performance metrics.

KumuluzEE Security

For easy integration with OAuth2/OpenID identity and access management providers.

KumuluzEE Circuit Breaker

For implementing circuit breakers and decoupling microservices.

KumuluzEE Kafka

For event streaming support using Apache Kafka.

KumuluzEE Blockchain

For Blockchain-enabled microservices.

Coming soon

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.

Why KumuluzEE

  • Allows you to develop microservices using standard Java EE technologies.
  • Allows you to gradually migrate existing Java EE applications to microservices and cloud-native architecture.
  • Zero lock-in. KumuluzEE does not require any specific code. Everything is configured in pom.xml.
  • Develop and build microservices as stand-alone JARs with minimal footprint.
  • Leverage your existing Java EE knowledge and extend it to cloud-native architecture.
  • Extend your microservices with common cloud-native patterns, such as config, discovery, logging, circuit-breakers, etc. KumuluzEE provides all the building blocks.
  • Have complete control over Java EE components.
  • KumuluzEE is fully integrated with KumuluzAPI, an innovative microservice API Management and other products for the Kumuluz family.
  • Full support for Docker containers and fully compatible with Kubernetes.

They trust us

Want to be listed here? Please contact us!