Hi,

In the past months some folks at Red Hat have been working on the
integration between Apache Camel and Quarkus. For those not familiar
with the topic, Quarkus is a new Apache 2 licensed Cloud Native Java
framework tailored for GraalVM and HotSpot that bring fast startup
and low memory footprint to Java based application by leverage clever
build time optimizations and AOT compilation through Substrate VM [1].

The result of the experimentation is available in the Quarkus
repository [2][3] and I’m also working on an experimental branch
on Camel K [4] to bring Quarkus on the K side based on my latest
blog “Adventures in GraalVM: polyglot Camel (k) native routes
with Quarkus”  [5]

I do believe that both communities can benefit from a collaboration:

Apache Camel can benefit from Quarkus to become
a) Even more suitable for microservices
b) Suitable for serverless workloads as Quarkus among others enables
   built-time warmup of the Camel Context, and elimination of dead-code
   (code that was only used during warmup) which is a key enabler for
   very fast start-up and low memory footprint Apache Camel can be on
   the innovative forefront with a cloud native Java stack for running
   modern serverless workloads on Kubernetes/Knative with Camel K and
   Camel Quarkus

So I’m proposing to officially support Quarkus in Apache Camel’s main
repository (or a dedicated one if it suits better) by creating a new
platform along with those we support as today (Spring Boot, Karaf).

Quarkus’ people is keen to donate the code related to Apache Camel
hosted in theirs repository to the Apache Software foundation.

There has been some other users in the community whom have tried
Quarkus and Camel together and written blogs [6] about their experience,
and Claus also posted a quick gif animation of native compiled Camel
with Quarkus starting up in 7 milliseconds and taking up only 15mb
of memory [7].

Thoughts ?

Luca

[1] https://quarkus.io/
[2] https://github.com/quarkusio/quarkus/tree/master/extensions/camel
[3] https://github.com/quarkusio/quarkus-quickstarts/tree/master/camel-java
[4]
https://github.com/lburgazzoli/apache-camel-k-runtime/tree/quarkus-runtime
[5] https://bit.ly/2HvOrh0
[6] https://bit.ly/2WDtCbW
[7]
https://www.linkedin.com/feed/update/urn:li:activity:6521869236153970688/

---
Luca Burgazzoli

Reply via email to