Microservices

Design event-driven integrations with Kamelets and Camel K

Design event-driven integrations with Kamelets and Camel K

The Kamelet is a concept introduced near the end of 2020 by Camel K to simplify the design of complex system integrations. If you’re familiar with the Camel ecosystem, you know that Camel offers many components for integrating existing systems. An integration’s granularity is related to its low-level components, however. With Kamelets you can reason at a higher level of abstraction than with Camel alone.

A Kamelet is a document specifying an integration flow. A Kamelet uses Camel components and enterprise integration patterns (EIPs) to describe a system’s behavior. You can reuse a Kamelet abstraction in any integration on top of a Kubernetes cluster. You can use any of Camel’s domain-specific languages (DSLs) to write a Kamelet, but the most natural choice is the YAML DSL. The YAML DSL is designed to specify input and output formats, so any integration developer knows beforehand what kind of data to expect.

A Kamelet also serves as a source or sink of events, making Kamelets the building blocks of an event-driven architecture. Later in the article, I will introduce the concept of source and sink events and how to use them in an event-driven architecture with Kamelets.

Continue reading “Design event-driven integrations with Kamelets and Camel K”

Share
Using Dekorate to generate Kubernetes manifests for Java applications

Using Dekorate to generate Kubernetes manifests for Java applications

To deploy an application on Kubernetes or Red Hat OpenShift, you first need to create objects to allow the platform to install an application from a container image. Then, you need to launch the application using a pod and expose it as a service with a static IP address. Doing all of that can be tedious, but there are ways to simplify the process.

Continue reading Using Dekorate to generate Kubernetes manifests for Java applications

Share
Integrating Spring Boot with Red Hat Integration Service Registry

Integrating Spring Boot with Red Hat Integration Service Registry

Most of the new cloud-native applications and microservices designs are based on event-driven architecture (EDA), responding to real-time information by sending and receiving information about individual events. This kind of architecture relies on asynchronous, non-blocking communication between event producers and consumers through an event streaming backbone such as Red Hat AMQ Streams running on top of Red Hat OpenShift. In scenarios where many different events are being managed, defining a governance model where each event is defined as an API is critical. That way, producers and consumers can produce and consume checked and validated events. We can use a service registry as a datastore for events defined as APIs.

From my field experience working with many clients, I’ve found the most typical architecture consists of the following components:

In this article, you will learn how to easily integrate your Spring Boot applications with Red Hat Integration Service Registry, which is based on the open source Apicurio Registry.

Continue reading “Integrating Spring Boot with Red Hat Integration Service Registry”

Share
Spring Boot on Quarkus: Magic or madness?

Spring Boot on Quarkus: Magic or madness?

Quarkus is a Java stack tailored for OpenJDK HotSpot (or OpenJ9 on zSeries) and GraalVM, crafted from optimized Java libraries and standards. It is a good choice for building highly-scalable applications while using lower amounts of CPU and memory resources than other Java frameworks. These applications can be traditional web applications, serverless applications, or even functions as a service.

Continue reading Spring Boot on Quarkus: Magic or madness?

Share
Develop Eclipse MicroProfile applications on Red Hat JBoss Enterprise Application Platform XP 2.0

Develop Eclipse MicroProfile applications on Red Hat JBoss Enterprise Application Platform XP 2.0

This article shows you how to install Red Hat JBoss Enterprise Application Platform (JBoss EAP) XP 2.0.0 GA with support for Eclipse MicroProfile. Once you’ve enabled Eclipse MicroProfile, you will be able to use its quickstart examples to start developing your own MicroProfile applications with Red Hat CodeReady Studio. In this demonstration, you’ll learn two ways to build and run the MicroProfile Config quickstart application.

Continue reading Develop Eclipse MicroProfile applications on Red Hat JBoss Enterprise Application Platform XP 2.0

Share