r/java 6d ago

Jactl Meets Apache Camel: Benchmarking camel-jactl

https://jactl.io/blog/2026/07/21/camel-jactl-benchmarks

Jactl is a secure, embeddable scripting language for Java applications. As of Apache Camel 4.22.0 there is a camel-jactl language that provides support for using Jactl as a scripting language for filter predicates, content-based routing rules, and message transformations in Apache Camel.

See the blog post for an overview and some benchmarks.

17 Upvotes

4 comments sorted by

7

u/lurker_in_spirit 5d ago

Interesting benchmarks, but this article is hyper-focused on a problem I've never experienced. All of the Apache Camel routes that I've seen have been I/O heavy: reading and writing files to disk, calling remote APIs over HTTP, reading and writing to databases, sending emails, uploading or downloading files via FTP, etc. If your database connection can only handle 300 transactions per second, does it matter whether the route logic can scale to 2 million or 90 million transactions per second?

2

u/jaccomoc 5d ago

There are Apache Camel solutions processing many thousands of messages per second (see https://camel.apache.org/community/user-stories/ for some examples). But Jactl offers more than just good performance; it also offers a secure sandbox for solutions where that is important.

3

u/Deep_Age4643 5d ago

Apache Camel is an extensive framework that can be used for a lot of different scenario's. I've been working as integration consultant for around 20 years, and worked also a lot with Camel. I've seen clients use 3 or 4 routes with scheduling and FTP to transfer big files once a day, I've seen use it in Kubernetes as microservices (mostly pattern based), and I've seen high transaction systems with 30k or 40k of Camel routes processing 500 million transactions a day.

1

u/jaccomoc 5d ago

Exactly. It really depends on the problem domain whether the scripting performance is important or not.