Apache Camel

in a nutshell

Martin Polák

What is Camel?

Just briefly...

  • Apache Camel ™ is a open-source integration framework based on Enterprise Integration Patterns.
  • Define routing and mediation rules in a variety of domain-specific languages (DSL, such as Java, XML, Groovy, Kotlin, and YAML).
  • Many components (Adapters, Protocols, Data formats,...).
  • Is open source using the Apache 2.0 licence.

What is Camel?

...few more cents.

  • Flexible - it can be deployed as standalone or in variety of containers.
  • Powerful routing engine.
  • Easy to extend with custom code.
  • Is part of many commercial products.

Architecture

Routes

Integration flows (scenarios) are organized in routes. Every route has 1 FROM and 1...n TOs.

                                    XML DSL:

                        <from uri="ftp:server/folder"/>
                        <to uri="activemq:queue:orders"/>
                                    
or
                                    Java DSL:

                       from("ftp:server/folder")
                       .to("activemq:queue:orders");
                                    

Routes

Simply said: Route is a path followed by the message.

Thank you for your attention!