The Rise and Fall of the Performance Monsters

, by

Introduction Apache Camel has always been committed to delivering top-notch performance. As the development of Camel 4 progressed, so did the dedication to enhancing its performance. In this blog post, we’ll explore the advances made in the pursuit of efficiency, focusing on key improvements introduced between Camel 4.1 and 4.2, with a few important improvements for the upcoming 4.3. Camel 4.1: A Leap Forward in Type Conversion One of the notable enhancements in Camel 4.

Continue reading ❯

FEATURESCAMEL

Camel K Observability: Micrometer Metrics

, by

We already explained how to take monitor your Integrations in the previous blog post about monitoring operations on Camel K. The good news is there are only a few changes with the move to Micrometer Metrics. From Microprofile to Micrometer Camel K 2.0 was the occasion to move from one technology (Microprofile) to another (Micrometer) for the Prometheus trait configuration implementation. The reason is the deprecation notice from Quarkus Microprile’s implementation in favor of using Micrometer Metrics.

Continue reading ❯

CAMEL KFEATURESDEVOPS

Change Data Capture with Apache Camel and Debezium

, by

In this article, we will explore how to use Debezium and Apache Camel in conjunction with Quarkus to build a reactive application efficiently and send real-time changes from a database to a destination, such as webservice or message queue or another database. What is Debezium? Debezium is a distributed, event-driven data change platform used to capture data changes in database systems and send them to other systems in real time so that applications can respond to all database insertions, updates and deletions made by other applications.

Continue reading ❯

FEATURESCAMEL

Hunting performance monsters on the back of a Camel

, by

Introduction We are thrilled to share the remarkable advancements in the performance of Apache Camel 4, achieved through our diligent efforts in addressing a critical JVM issue (JDK-8180450). In this article, we will delve into the details of our investigation, the tools employed, and the subsequent optimizations that have propelled Apache Camel 4 to new heights of speed and efficiency. Identifying the Performance Challenge The JVM issue JDK-8180450, known for its potential performance penalties during type checking, became our focal point.

Continue reading ❯

FEATURESCAMEL

Camel Micrometer Observation: Observability with Micrometer

, by

The Spring Observability Team has added native observability support for Spring Applications with Spring Framework 6 and Spring Boot 3. You can read more about the feature in the Spring blog where the Micrometer team explains what Observability and Micrometer Observation projects are. This blog post will explain how to set up Micrometer Observation and how you can add observability to your Camel projects. Setting up the ObservationRegistry The following snippet of code shows how to set up basic metrics and tracing capabilities for an ObservationRegistry.

Continue reading ❯

FEATURESOBSERVABILITY

Camel K Observability: Distributed Tracing

, by

Tracing is an important approach for controlling and monitoring the experience of users, it allows us to gather more information about an integration’s performance. Camel K has been providing support for distributed tracing using OpenTracing since long time. At the beginning of 2022, the CNCF announced that they were archiving the OpenTracing project in favor of the OpenTelemetry project. OpenTelemetry is the latest solution created by merging OpenTracing and OpenCensus. As a result, we decided in Camel K 1.

Continue reading ❯

CAMEL KFEATURESDEVOPS

Camel K Operations: monitoring

, by

Camel K offers a wide list of operations you can execute once your Integration has been deployed (likely in a production environment). When we talk about operations, the most typical question we got is “How to monitor a Camel K Integration?”. Fortunately, we have all the ingredients needed to let you manage this operation as smooth as possible. I’ll walk you through the different tools and configuration needed in this blog post.

Continue reading ❯

CAMEL KFEATURES

Introducing the Resume API v2

, by

The need to process larger quantities of data has been a growing concern and necessity within our community. For the last few releases we have been working to create mechanisms to simplify how our users can consume data at scale. Although Camel is no stranger to consuming data at scale, recent trends in computing and systems architecture introduce the need for behaviors that improve agility, speed and scalability when doing so.

Continue reading ❯

FEATURESCAMEL

Good bye camel-testcontainers! Hello Camel's test-infra

, by

For Camel 3.16.0 we are removing the deprecated container-based test modules and replacing them with a new set of modules called Camel test-infra. They continue to support container-based tests via TestContainers, however they abstract the underlying test infrastructure. One of the great benefits for our project is that they allow us to more easily switch from container-based tests, to external instances. Previously, we would need to create a new test or implement a more complex design if we wanted to test both a container instance and an external service instance (i.

Continue reading ❯

FEATURESCAMEL

Upcoming changes to the consumer on Kafka component

, by

We recently started to review, investigate and fix reliability issues with the Kafka component. As part of that, we refactored the code to avoid problematic concurrency patterns, remove calls to deprecated Kafka client code and simplify the overall maintainability of the code. This led to many changes in the internal implementation of the component, which we will talk about in this blog post. Motivation The ground work related to these changes can be traced back to the following set of issues reported on our Jira.

Continue reading ❯

FEATURESCAMEL

Camel K 1.5 - New configuration settings

, by

Camel K version 1.5 is out. And with it, a new way of providing configuration and resources to your Integration. We have worked on a deep code refactoring in order to harmonize the existing configuration settings and add new ones to exploit the power of camel-quarkus runtime, which has become the main way to materialize an Integration. We added new features that will simplify your developer life. We also added new checks that will give you useful tips when using a feature in a wrong way.

Continue reading ❯

FEATURESCAMEL K