SlideShare a Scribd company logo
1 of 85
Download to read offline
Introduction to Apache Camel




Claus Ibsen
Principal Software Engineer, FuseSource
September 2010




              1
When you joined today‟s session …

       Audio is broadcast from your computer




                               Submit your questions
                                via the Chat Window

                                Contact today‟s Host
                                via the Chat Window
Today's speaker - Claus Ibsen



 Principal Software Engineer at FuseSource
     • Full time Apache Camel hacker
 Apache Camel committer
 Co-author of Camel in Action book
     • Available in late 2010
 Contact
     • claus.ibsen@fusesource.com
     • http://davsclaus.blogspot.com/
     • http://twitter.com/davsclaus

                                              http://www.manning.com/ibsen




 3     © 2010 Progress Software Corporation
Why the name Camel?




                                Camel is easy to remember and type




 4   © 2010 Progress Software Corporation
Agenda



    The birth of Apache Camel
    What is Apache Camel
    A little example
    What's included in the box?
    Running Camel
    Another Example
    The Camel Community
    Q and A




 5     © 2010 Progress Software Corporation
The birth of Apache Camel



     • Camel’s parents




 6     © 2010 Progress Software Corporation
The birth of Apache Camel



 Initial Commit Log
  r519901 | jstrachan | 2007-03-19 11:54:57 +0100
  (Mon, 19 Mar 2007) | 1 line

     Initial checkin of Camel routing library




 Apache Camel 1.0 released June 2007

 Apache Camel is 3 years old

 7     © 2010 Progress Software Corporation
The birth of Apache Camel



 My initial commit

     r640963 | davsclaus | 2008-03-25 21:07:10 +0100
     (Tue, 25 Mar 2008) | 1 line

     Added unit test for mistyped URI




 8     © 2010 Progress Software Corporation
Agenda



    The birth of Apache Camel
    What is Apache Camel
    A little example
    What's included in the box?
    Running Camel
    Another Example
    The Camel Community
    Q and A




 9     © 2010 Progress Software Corporation
What is Apache Camel



 Quote from the web site


                         Apache Camel is a
                      Powerful Open Source
                       Integration Framework
                          based on known
                   Enterprise Integration Patterns



 10   © 2010 Progress Software Corporation
What is Apache Camel



 Why do we need Integration?
      • Your apps are build using different tech stacks
      • Critical for your business to integrate
 Why Integration Framework?
      • Framework do the heavy lifting
      • Focus on business problem
      • Not "reinventing the wheel"




 11     © 2010 Progress Software Corporation
What is Apache Camel



 What is Enterprise Integration Patterns?




 12   © 2010 Progress Software Corporation
What is Apache Camel



 What is Enterprise Integration Patterns?




 13   © 2010 Progress Software Corporation
What is Apache Camel



 What is Enterprise Integration Patterns?




                                             Its a book
 14   © 2010 Progress Software Corporation
What is Apache Camel



 Lets look at one of the patterns




 15   © 2010 Progress Software Corporation
What is Apache Camel



 Use Case




      ActiveMQ                               WebSphereMQ




 16   © 2010 Progress Software Corporation
What is Apache Camel



 Filter Pattern




 17   © 2010 Progress Software Corporation
What is Apache Camel



 Filter Pattern




      from                                    filter   send to
        A                                    message     B




 18   © 2010 Progress Software Corporation
What is Apache Camel



 Filter Pattern




      from(A)                            filter(predicate)   to(B)




 19    © 2010 Progress Software Corporation
What is Apache Camel



 Filter Pattern




      from(A)                            .filter(isWidget)   .to(B)




 20    © 2010 Progress Software Corporation
What is Apache Camel



 Filter Route




                 from(A).filter(isWidget).to(B);




 21   © 2010 Progress Software Corporation
What is Apache Camel



 Filter Route




      isWidget = xpath(“/quote/product = „widget‟”);

                      from(A).filter(isWidget).to(B);


 22    © 2010 Progress Software Corporation
What is Apache Camel



 Filter Route

Endpoint A = endpoint(“activemq:queue:quote”);

Endpoint B = endpoint(“mq:quote”);

Predicate isWidget = xpath(“/quote/product = „widget‟”);


                            from(A).filter(isWidget).to(B);



 23   © 2010 Progress Software Corporation
What is Apache Camel



     Filter Route - Java DSL



public void configure() throws Exception {
  Endpoint A = endpoint("activemq:queue:quote");
  Endpoint B = endpoint("mq:quote");
  Predicate isWidget = xpath("/quote/product = „widget‟");

     from(A).filter(isWidget).to(B);
}




    24   © 2010 Progress Software Corporation
What is Apache Camel



 Filter Route - Java DSL

 import org.apache.camel.builder.RouteBuilder;
 import static org.apache.camel.builder.xml.XPathBuilder.xpath;

 public class FilterRoute extends RouteBuilder {

     public void configure() throws Exception {
      Endpoint A = endpoint("activemq:queue:quote");
      Endpoint B = endpoint("mq:quote");
      Predicate isWidget = xpath("/quote/product = „widget‟");

         from(A).filter(isWidget).to(B);
     }
 }




 25         © 2010 Progress Software Corporation
What is Apache Camel



 Filter Route - Java DSL

 import org.apache.camel.builder.RouteBuilder;

 public class FilterRoute extends RouteBuilder {

     public void configure() throws Exception {
       from("activemq:queue:quote")
         .filter().xpath("/quote/product =„widget‟")
           .to("mq:quote");
     }
 }




 26     © 2010 Progress Software Corporation
What is Apache Camel



 IDE Tooling
                                                       Code
                                                       Assistance




                                             JavaDoc




 27   © 2010 Progress Software Corporation
What is Apache Camel



 IDE Tooling




                                             Code
                                             Assistance




 28   © 2010 Progress Software Corporation
What is Apache Camel



 Lets look at the most famous pattern




 29   © 2010 Progress Software Corporation
What is Apache Camel



 Content Based Router




 30   © 2010 Progress Software Corporation
What is Apache Camel



 Content Based Router - Spring XML

<camelContext>
 <route>
  <from uri="activemq:NewOrders"/>
  <choice>
    <when>
     <xpath>/order/product = 'widget'</xpath>
     <to uri="activemq:Orders.Widgets"/>
    </when>
    <otherwise>
     <to uri="activemq:Orders.Gadgets"/>
    </otherwise>
  </choice>
 </route>
</camelContext>
 31   © 2010 Progress Software Corporation
What is Apache Camel



 Content Based Router - Java DSL



      from("activemq:NewOrders")
        .choice()
          .when().xpath(“/order/product = 'widget'”)
           .to(“activemq:Orders.Widget”)
          .otherwise()
           .to(“acitvemq:Orders.Gadget”);




 32     © 2010 Progress Software Corporation
What is Apache Camel



 Summary
      •   Camel is an integration framework
      •   Based on Enterprise Integration Patterns
      •   Routing and mediation
      •   Easy to use DSL to define routes
      •   No heavy specification
      •   No container dependency
      •   Payload agnostic
      •   Connectivity to a great wealth of transports




 33       © 2010 Progress Software Corporation
What is Apache Camel



 Mission Statement




                   Making integration easier and
                   more accessible to developers




 34   © 2010 Progress Software Corporation
Agenda



     The birth of Apache Camel
     What is Apache Camel
     A little example
     What's included in the box?
     Running Camel
     Another Example
     The Camel Community
     Q and A




 35     © 2010 Progress Software Corporation
A little example



 Based on community user (Gunnar Hillert)
      • http://hillert.blogspot.com/2009/09/camellos-discovering-apache-
        camel-ii.html
 Goals
      •   1) Pickup files from a directory
      •   2) Make sure we only pickup 3 files per 30 seconds
      •   3) Store into JMS queue
      •   4) Listen on JMS queue
      •   5) And upload file to FTP server




 36       © 2010 Progress Software Corporation
A little example



 Goals using Enterprise Integration Patterns




          1                        2             3       4     5



 Goals
      •   1) Pickup files from a directory
      •   2) Make sure we only pickup 3 files per 30 seconds
      •   3) Store into JMS queue
      •   4) Listen on JMS queue
      •   5) And upload file to FTP server

 37       © 2010 Progress Software Corporation
A little example



 Goals using Enterprise Integration Patterns




 from                    throttle                to   from     to
 Goals
      •   1) Pickup files from a directory
      •   2) Make sure we only pickup 3 files per 30 seconds
      •   3) Store into JMS queue
      •   4) Listen on JMS queue
      •   5) And upload file to FTP server

 38       © 2010 Progress Software Corporation
A little example



 Camel DSL in XML


 <camelContext>
  <route>
   <from uri="file:camellos/inbox?move=.done"/>
   <throttle maximumRequestsPerPeriod="3”
          timePeriodMillis="30000”>
     <to uri="activemq:queue:camellos"/>
   </throttle>
  </route>
  <route>
   <from uri="activemq:queue:camellos"/>
   <to uri="ftp://admin:secret@localhost:3333"/>
  </route>
 </camelContext>

 39   © 2010 Progress Software Corporation
Agenda



     The birth of Apache Camel
     What is Apache Camel
     A little example
     What's included in the box?
     Running Camel
     Another Example
     The Camel Community
     Q and A




 40     © 2010 Progress Software Corporation
What's included in the box?



 Highlights of whats included in Camel




 41   © 2010 Progress Software Corporation
What's included in the box?



 50+ EIP patterns




  http://camel.apache.org/enterprise-integration-patterns.html

 42   © 2010 Progress Software Corporation
What's included in the box?



 70+ Components
           activemq                crypto     flatpack          irc           ldap

      activemq-journal               cxf     freemarker      javaspace   mail/imap/pop3

             amqp                   cxfrs    ftp/ftps/sftp      jbi          mina

             atom                 dataset        gae            jcr          mock

             bean                  direct       hdfs           jdbc           msv

       bean validation             esper     hibernate         jetty        nagios

            browse                 event         hl7            jms          netty

             cache                  exec         http           jpa           nmr

            cometd                   file       ibatis         jt/400        printer


                      http://camel.apache.org/components.html

 43   © 2010 Progress Software Corporation
What's included in the box?



 70+ Components
          properties              scalate             stream        xslt

             quartz                 seda          string-template   ejb

            quickfix               servlet             test

               ref                smooks              timer

             restlet               smpp             validation

              rmi                  snmp              velocity

              rnc            spring-integration        vm

               rng            spring-security         xmpp

               rss                   sql              xquery


                       http://camel.apache.org/components.html

 44   © 2010 Progress Software Corporation
What's included in the box?



 18 Data Formats
                                        bindy       protobuf
                                       castor      serialization
                                             csv      soap
                                       crypto      tidy markup
                                      flatpack     xml beans
                                         gzip      xml security
                                             hl7     xstream
                                         jaxb          zip
                                         json         dozer

                       http://camel.apache.org/data-format.html

 45   © 2010 Progress Software Corporation
What's included in the box?



 Data Format




            from("activemq:QueueWithJavaObjects”)
               .marshal().jaxb()
               .to("mq:QueueWithXmlMessages");




 46   © 2010 Progress Software Corporation
What's included in the box?



 Predicates & Expressions


                                         BeanShell      PHP
                                               EL      Python
                                             Groovy     Ruby
                                         JavaScript    Simple
                                             JSR 223    SQL
                                             OGNL      XPath
                                              MVEL     XQuery
                                 http://camel.apache.org/languages.html


 47   © 2010 Progress Software Corporation
What's included in the box?



 DSL in 3 programming languages
                                                                                     Java
 XML

                                                         from(A).filter(isWidget).to(B);
<route>
 <from ref="A"/>
 <filter>
   <xpath>/quote/product = „widget‟</xpath>
   <to ref="B"/>
 </filter>
</route>
                                              from(A) filter(isWidget) --> B
                                                             Scala




 48    © 2010 Progress Software Corporation
What's included in the box?



 Type Converters




                         INFO DefaultTypeConverter
                         - Loaded 148 type converters

 49   © 2010 Progress Software Corporation
What's included in the box?



 Custom Type Converters

      @Converter
      public class MyTypeConverter {
        @Converter
        public String toString(MyOrder order) {
          StringBuilder sb = new StringBuilder();
          ...
          return sb.toString();
        }
      }
             # META-INF/services/org/apache/camel/TypeConverter
             com.acme.converters
                                             META-INF file in the JAR

 50   © 2010 Progress Software Corporation
What's included in the box?



 Powerful bean integration
      • Adapt to your beans
      • EIP as @annotations
         -   @Produce
         -   @Consume
         -   @DynamicRouter
         -   @RecipientList
         -   @RoutingSlip

       more to come in future releases ...




 51     © 2010 Progress Software Corporation
What's included in the box?



 Bean as Message Translator




 52   © 2010 Progress Software Corporation
What's included in the box?



 Bean as Message Translator
         from("activemq:Incoming”).
           beanRef("myBeanName”, “someMethod").
            to("activemq:Outgoing");




public class Foo {
    public String someMethod(String name) {
      return “Hello “ + name;
    }
}


    53     © 2010 Progress Software Corporation
What's included in the box?


  Bean Parameter Binding with XPath


      public class Foo {
        public String processOrder(
          String orderAsXml,
          @XPath(“/order/@id") String oid,
          @Header("JMSCorrelationID") String cid) {
              ...
        }
      }




 54    © 2010 Progress Software Corporation
What's included in the box?



 Sending message


        public class Foo {
         @Produce(uri = "activemq:foo.bar")
         ProducerTemplate producer;

            public void doSomething() {
              if (whatEver) {
                producer.sendBody("Hello World");
              }
            }

        }



 55   © 2010 Progress Software Corporation
What's included in the box?



 Receiving message


         public class Foo {

             @Consume(uri = "activemq:cheese")
             public void onCheese(String name) {
               ...
             }

         }




 56   © 2010 Progress Software Corporation
What's included in the box?



 Test Kit
      •   camel-test.jar
      •   JUnit based (3.x and 4.x)
      •   Supports Spring
      •   Easy to test
      •   Quick prototyping




 57       © 2010 Progress Software Corporation
What's included in the box?


                                         extend CamelTestSupport
 Test Kit from IDE
                                                                   Right Click ->
                                                                    Run
                                                                    Debug




                           Inline RouteBuilder




 58   © 2010 Progress Software Corporation
What's included in the box?



 Managed
      • JMX API
      • REST API




 59    © 2010 Progress Software Corporation
What's included in the box?



 Web console
      • REST API




 60    © 2010 Progress Software Corporation
What's included in the box?



 FuseSource Rider
      •




 61       © 2010 Progress Software Corporation
What's included in the box?



 Summary
      •   50+ EIP patterns
      •   70+ Connectivity components
      •   15+ Data formats
      •   10+ Languages
      •   DSL in multiple flavors (Java, XML, Scala, Groovy)
      •   Automatic type conversion
      •   Strong bean support
      •   Test Kit
      •   Management (JMX, REST)
      •   Web console




 62       © 2010 Progress Software Corporation
Agenda



     The birth of Apache Camel
     What is Apache Camel
     A little example
     What's included in the box?
     Running Camel
     Another Example
     The Camel Community
     Q and A




 63     © 2010 Progress Software Corporation
Running Camel



 Riding the Camel




 64   © 2010 Progress Software Corporation
Running Camel



 Camel is not a server
 Camel is lightweight and embeddable
 Known Deployment Options
      •   Standalone Java Application            Known Containers
                                                 Apache ServiceMix
      •   Web Application
                                                 Apache ActiveMQ
      •   J2EE Application                       Apache Tomcat
      •   JBI                                    Jetty
                                                 JBoss
      •   OSGi                                   IBM WebSphere
      •   Google App Engine                      BEA WebLogic
                                                 Oracle OC4j
      •   Java Web Start
                                                 GAE
      •   Spring Application                     ... others




 65       © 2010 Progress Software Corporation
Running Camel



 Java Application

      CamelContext context = new DefaultCamelContext();
      context.addRoutes(new MyRouteBuilder());
      context.start();



 Spring Application
       <camelContext>
        <package>com.acme.quotes</package>
       </camelContext>




 66     © 2010 Progress Software Corporation
Agenda



     The birth of Apache Camel
     What is Apache Camel
     A little example
     What's included in the box?
     Running Camel
     Another Example
     The Camel Community
     Q and A




 67     © 2010 Progress Software Corporation
Another Example



 Rider Auto Parts Example by Jonathan Anstey
        http://architects.dzone.com/articles/apache-camel-integration




 68   © 2010 Progress Software Corporation
Another Example



 Rider Auto Parts Example - 3 Routes

                                             1




 69   © 2010 Progress Software Corporation
Another Example



 Rider Auto Parts Example - 3 Routes

                                             1




          2




 70   © 2010 Progress Software Corporation
Another Example



 Rider Auto Parts Example - 3 Routes

                                             1




                                                 3
          2




 71   © 2010 Progress Software Corporation
Another Example



 Rider Auto Parts Example - 1st Route
                from                    1


                                            to

 public class Route1 extends RouteBuilder {

     public void configure() throws Exception {
       from("ftp:user@rider.com?password=secret")
         .to("activemq:queue:incoming");
     }
 }
  72    © 2010 Progress Software Corporation
Another Example



 Rider Auto Parts Example - 2nd Route

                                from                      to
                                                     2

       public class Route2 extends RouteBuilder {

           public void configure() throws Exception {
             from("jetty:http://localhost:8080/orders")
               .inOnly("activemq:queue:incoming")
               .transform().constant("OK");
           }
       }



  73       © 2010 Progress Software Corporation
Another Example



 Rider Auto Parts Example - 3rd Route

                                                              3
                      from                               to


                         choice

                                       route on next slide



  74   © 2010 Progress Software Corporation
Another Example



 Rider Auto Parts Example - 3rd Route
       public class Route3 extends RouteBuilder {
        public void configure() throws Exception {
         JaxbDataFormat jaxb = new JaxbDataFormat("com.rider");

               from("activemq:queue:incoming")
                 .convertBodyTo(String.class)
                 .choice()
                   .when().method("helper”, "isXml")
                    .unmarshal(jaxb)
                    .to("activemq:queue:order")
                   .when().method("helper”, "isCsv")
                    .unmarshal().csv()
                    .beanRef("orderService”, "csvToXml")
                    .to("activemq:queue:order")
           }
       }



  75       © 2010 Progress Software Corporation
Agenda



     The birth of Apache Camel
     What is Apache Camel
     A little example
     What's included in the box?
     Running Camel
     Another Example
     The Camel Community
     Q and A




 76     © 2010 Progress Software Corporation
The Camel Community



 Camel website
      • 52% increase (2010 over 2009)
      • Average 2200 visits per weekday (2000 - 2500)

 High activity on mailing list




 77     © 2010 Progress Software Corporation
The Camel Community



 20 committers

 High commit activity




                                             http://markmail.org/


 78   © 2010 Progress Software Corporation
The Camel Community



 Books - Bestseller
      • Manning top-15 year to date (2010)




                                #10


 79     © 2010 Progress Software Corporation
The Camel Community



 JIRA tickets

                                        Total           3106

                                        Open          136 (4%)

                                    Resolved        2970 (96%)

                                        Bugs        2 (2% open)

                                  Oldest Bug          Dec 2009

                                             Sep 6th 2010



 80   © 2010 Progress Software Corporation
The Camel Community



 A lot in each new release

                  Release                     Date       Tickets
                 Camel 2.0                   Aug 2009     760
                 Camel 2.1                   Dec 2009     303
                 Camel 2.2                   Feb 2010     180
                 Camel 2.3                   May 2010     278
                 Camel 2.4                   July 2010    182
                 Camel 2.5                   Sep 2010     170+



 81   © 2010 Progress Software Corporation
The Camel Community



 3rd party integrating Camel
      •   Apache ServiceMix
      •   Apache ActiveMQ
      •   Apache James                           In Progress
      •   OpenESB                                • Smooks
      •   Progress Actional Diagnostics          • Doozer
      •   FuseHQ
      •   Open eHealth Integration Platform
      •   Grails Camel Plugin
      •   Play Framework
      •   Akka
      •   Scalate
      •   JBoss Drools
      •   JBoss ESB
 82       © 2010 Progress Software Corporation
Agenda



     The birth of Apache Camel
     What is Apache Camel
     A little example
     What's included in the box?
     Running Camel
     Another Example
     The Camel Community
     Q and A




 83     © 2010 Progress Software Corporation
Q and A



 Where do I get more information?
       Camel website: http://camel.apache.org
       Camel article: http://architects.dzone.com/articles/apache-camel-integration
       FuseSource website: http://fusesource.com
       Camel in Action book: http://manning.com/ibsen




 84   © 2010 Progress Software Corporation
Q and A




 85   © 2010 Progress Software Corporation

More Related Content

What's hot

Apache Camel K - Copenhagen
Apache Camel K - CopenhagenApache Camel K - Copenhagen
Apache Camel K - CopenhagenClaus Ibsen
 
Istio service mesh introduction
Istio service mesh introductionIstio service mesh introduction
Istio service mesh introductionKyohei Mizumoto
 
Spring boot introduction
Spring boot introductionSpring boot introduction
Spring boot introductionRasheed Waraich
 
Istio : Service Mesh
Istio : Service MeshIstio : Service Mesh
Istio : Service MeshKnoldus Inc.
 
Continuous Delivery using AWS CodePipeline, AWS Lambda & AWS ElasticBeanstalk
Continuous Delivery using AWS CodePipeline, AWS Lambda & AWS ElasticBeanstalkContinuous Delivery using AWS CodePipeline, AWS Lambda & AWS ElasticBeanstalk
Continuous Delivery using AWS CodePipeline, AWS Lambda & AWS ElasticBeanstalkThomas Shaw
 
Introduction to Spring Framework
Introduction to Spring FrameworkIntroduction to Spring Framework
Introduction to Spring Framework Serhat Can
 
Database migrations with Flyway and Liquibase
Database migrations with Flyway and LiquibaseDatabase migrations with Flyway and Liquibase
Database migrations with Flyway and LiquibaseLars Östling
 
Mule 4 migration + Common Integration Challenges : MuleSoft Virtual Muleys Me...
Mule 4 migration + Common Integration Challenges : MuleSoft Virtual Muleys Me...Mule 4 migration + Common Integration Challenges : MuleSoft Virtual Muleys Me...
Mule 4 migration + Common Integration Challenges : MuleSoft Virtual Muleys Me...Angel Alberici
 
Integrating microservices with apache camel on kubernetes
Integrating microservices with apache camel on kubernetesIntegrating microservices with apache camel on kubernetes
Integrating microservices with apache camel on kubernetesClaus Ibsen
 
Oracle Application Express
Oracle Application ExpressOracle Application Express
Oracle Application ExpressHBoone
 
Introduction to Microservices
Introduction to MicroservicesIntroduction to Microservices
Introduction to MicroservicesMahmoudZidan41
 
Mulesoft with ELK (Elastic Search, Log stash, Kibana)
Mulesoft with ELK (Elastic Search, Log stash, Kibana)Mulesoft with ELK (Elastic Search, Log stash, Kibana)
Mulesoft with ELK (Elastic Search, Log stash, Kibana)Gaurav Sethi
 
Getting started with Apache Camel presentation at BarcelonaJUG, january 2014
Getting started with Apache Camel presentation at BarcelonaJUG, january 2014Getting started with Apache Camel presentation at BarcelonaJUG, january 2014
Getting started with Apache Camel presentation at BarcelonaJUG, january 2014Claus Ibsen
 
Front end microservices: architectures and solution
Front end microservices: architectures and solutionFront end microservices: architectures and solution
Front end microservices: architectures and solutionMikhail Kuznetcov
 
Spring Boot in Action
Spring Boot in Action Spring Boot in Action
Spring Boot in Action Alex Movila
 
ASP.NET Core MVC + Web API with Overview
ASP.NET Core MVC + Web API with OverviewASP.NET Core MVC + Web API with Overview
ASP.NET Core MVC + Web API with OverviewShahed Chowdhuri
 

What's hot (20)

Apache Camel K - Copenhagen
Apache Camel K - CopenhagenApache Camel K - Copenhagen
Apache Camel K - Copenhagen
 
Istio service mesh introduction
Istio service mesh introductionIstio service mesh introduction
Istio service mesh introduction
 
Spring boot introduction
Spring boot introductionSpring boot introduction
Spring boot introduction
 
Istio : Service Mesh
Istio : Service MeshIstio : Service Mesh
Istio : Service Mesh
 
Continuous Delivery using AWS CodePipeline, AWS Lambda & AWS ElasticBeanstalk
Continuous Delivery using AWS CodePipeline, AWS Lambda & AWS ElasticBeanstalkContinuous Delivery using AWS CodePipeline, AWS Lambda & AWS ElasticBeanstalk
Continuous Delivery using AWS CodePipeline, AWS Lambda & AWS ElasticBeanstalk
 
Introduction to Spring Framework
Introduction to Spring FrameworkIntroduction to Spring Framework
Introduction to Spring Framework
 
Architecture: Microservices
Architecture: MicroservicesArchitecture: Microservices
Architecture: Microservices
 
Database migrations with Flyway and Liquibase
Database migrations with Flyway and LiquibaseDatabase migrations with Flyway and Liquibase
Database migrations with Flyway and Liquibase
 
Mule 4 migration + Common Integration Challenges : MuleSoft Virtual Muleys Me...
Mule 4 migration + Common Integration Challenges : MuleSoft Virtual Muleys Me...Mule 4 migration + Common Integration Challenges : MuleSoft Virtual Muleys Me...
Mule 4 migration + Common Integration Challenges : MuleSoft Virtual Muleys Me...
 
Integrating microservices with apache camel on kubernetes
Integrating microservices with apache camel on kubernetesIntegrating microservices with apache camel on kubernetes
Integrating microservices with apache camel on kubernetes
 
Oracle Application Express
Oracle Application ExpressOracle Application Express
Oracle Application Express
 
Introduction to Microservices
Introduction to MicroservicesIntroduction to Microservices
Introduction to Microservices
 
API for Beginners
API for BeginnersAPI for Beginners
API for Beginners
 
Mulesoft with ELK (Elastic Search, Log stash, Kibana)
Mulesoft with ELK (Elastic Search, Log stash, Kibana)Mulesoft with ELK (Elastic Search, Log stash, Kibana)
Mulesoft with ELK (Elastic Search, Log stash, Kibana)
 
Getting started with Apache Camel presentation at BarcelonaJUG, january 2014
Getting started with Apache Camel presentation at BarcelonaJUG, january 2014Getting started with Apache Camel presentation at BarcelonaJUG, january 2014
Getting started with Apache Camel presentation at BarcelonaJUG, january 2014
 
Front end microservices: architectures and solution
Front end microservices: architectures and solutionFront end microservices: architectures and solution
Front end microservices: architectures and solution
 
Windows Communication Foundation (WCF)
Windows Communication Foundation (WCF)Windows Communication Foundation (WCF)
Windows Communication Foundation (WCF)
 
Service mesh
Service meshService mesh
Service mesh
 
Spring Boot in Action
Spring Boot in Action Spring Boot in Action
Spring Boot in Action
 
ASP.NET Core MVC + Web API with Overview
ASP.NET Core MVC + Web API with OverviewASP.NET Core MVC + Web API with Overview
ASP.NET Core MVC + Web API with Overview
 

Similar to Apache Camel Introduction

Apache Camel - FUSE community day London 2010 presentation
Apache Camel - FUSE community day London 2010 presentationApache Camel - FUSE community day London 2010 presentation
Apache Camel - FUSE community day London 2010 presentationClaus Ibsen
 
Introductiontoapachecamel 110131060022-phpapp01
Introductiontoapachecamel 110131060022-phpapp01Introductiontoapachecamel 110131060022-phpapp01
Introductiontoapachecamel 110131060022-phpapp01dheeraj kumar
 
Peter lubbers-html5-offline-web-apps
Peter lubbers-html5-offline-web-appsPeter lubbers-html5-offline-web-apps
Peter lubbers-html5-offline-web-appsSkills Matter
 
HTML5 Offline Web Applications (Silicon Valley User Group)
HTML5 Offline Web Applications (Silicon Valley User Group)HTML5 Offline Web Applications (Silicon Valley User Group)
HTML5 Offline Web Applications (Silicon Valley User Group)robinzimmermann
 
Essential Camel Components
Essential Camel ComponentsEssential Camel Components
Essential Camel ComponentsChristian Posta
 
Warsaw MuleSoft Meetup - Runtime Fabric
Warsaw MuleSoft Meetup - Runtime FabricWarsaw MuleSoft Meetup - Runtime Fabric
Warsaw MuleSoft Meetup - Runtime FabricPatryk Bandurski
 
Best Practices for Middleware and Integration Architecture Modernization with...
Best Practices for Middleware and Integration Architecture Modernization with...Best Practices for Middleware and Integration Architecture Modernization with...
Best Practices for Middleware and Integration Architecture Modernization with...Claus Ibsen
 
Solving Enterprise Integration with Apache Camel
Solving Enterprise Integration with Apache CamelSolving Enterprise Integration with Apache Camel
Solving Enterprise Integration with Apache CamelChristian Posta
 
RESTful Services and Distributed OSGi - 04/2009
RESTful Services and Distributed OSGi - 04/2009RESTful Services and Distributed OSGi - 04/2009
RESTful Services and Distributed OSGi - 04/2009Roland Tritsch
 
ApacheCon NA - Apache Camel K: a cloud-native integration platform
ApacheCon NA - Apache Camel K: a cloud-native integration platformApacheCon NA - Apache Camel K: a cloud-native integration platform
ApacheCon NA - Apache Camel K: a cloud-native integration platformNicola Ferraro
 
Extending uBuild and uDeploy with Plugins
Extending uBuild and uDeploy with PluginsExtending uBuild and uDeploy with Plugins
Extending uBuild and uDeploy with PluginsIBM UrbanCode Products
 
ApacheCon NA 2010 - Developing Composite Apps for the Cloud with Apache Tuscany
ApacheCon NA 2010 - Developing Composite Apps for the Cloud with Apache TuscanyApacheCon NA 2010 - Developing Composite Apps for the Cloud with Apache Tuscany
ApacheCon NA 2010 - Developing Composite Apps for the Cloud with Apache TuscanyJean-Sebastien Delfino
 
Mulesoft Connections to different companies, and different services
Mulesoft Connections to different companies, and different servicesMulesoft Connections to different companies, and different services
Mulesoft Connections to different companies, and different servicesByreddy Sravan Kumar Reddy
 
ECM and Open Source Software: A Disruptive Force in ECM Solutions
ECM and Open Source Software: A Disruptive Force in ECM SolutionsECM and Open Source Software: A Disruptive Force in ECM Solutions
ECM and Open Source Software: A Disruptive Force in ECM SolutionsJeff Potts
 
São Paulo MuleSoft Meetup #5 - Runtime Fabric
São Paulo MuleSoft Meetup #5 - Runtime FabricSão Paulo MuleSoft Meetup #5 - Runtime Fabric
São Paulo MuleSoft Meetup #5 - Runtime FabricGuilherme Pereira Silva
 
Spring boot microservice metrics monitoring
Spring boot   microservice metrics monitoringSpring boot   microservice metrics monitoring
Spring boot microservice metrics monitoringOracle Korea
 

Similar to Apache Camel Introduction (20)

Apache Camel - FUSE community day London 2010 presentation
Apache Camel - FUSE community day London 2010 presentationApache Camel - FUSE community day London 2010 presentation
Apache Camel - FUSE community day London 2010 presentation
 
Introductiontoapachecamel 110131060022-phpapp01
Introductiontoapachecamel 110131060022-phpapp01Introductiontoapachecamel 110131060022-phpapp01
Introductiontoapachecamel 110131060022-phpapp01
 
Peter lubbers-html5-offline-web-apps
Peter lubbers-html5-offline-web-appsPeter lubbers-html5-offline-web-apps
Peter lubbers-html5-offline-web-apps
 
HTML5 Offline Web Applications (Silicon Valley User Group)
HTML5 Offline Web Applications (Silicon Valley User Group)HTML5 Offline Web Applications (Silicon Valley User Group)
HTML5 Offline Web Applications (Silicon Valley User Group)
 
Essential Camel Components
Essential Camel ComponentsEssential Camel Components
Essential Camel Components
 
Warsaw MuleSoft Meetup - Runtime Fabric
Warsaw MuleSoft Meetup - Runtime FabricWarsaw MuleSoft Meetup - Runtime Fabric
Warsaw MuleSoft Meetup - Runtime Fabric
 
Best Practices for Middleware and Integration Architecture Modernization with...
Best Practices for Middleware and Integration Architecture Modernization with...Best Practices for Middleware and Integration Architecture Modernization with...
Best Practices for Middleware and Integration Architecture Modernization with...
 
EIP In Practice
EIP In PracticeEIP In Practice
EIP In Practice
 
Solving Enterprise Integration with Apache Camel
Solving Enterprise Integration with Apache CamelSolving Enterprise Integration with Apache Camel
Solving Enterprise Integration with Apache Camel
 
RESTful Services and Distributed OSGi - 04/2009
RESTful Services and Distributed OSGi - 04/2009RESTful Services and Distributed OSGi - 04/2009
RESTful Services and Distributed OSGi - 04/2009
 
ApacheCon NA - Apache Camel K: a cloud-native integration platform
ApacheCon NA - Apache Camel K: a cloud-native integration platformApacheCon NA - Apache Camel K: a cloud-native integration platform
ApacheCon NA - Apache Camel K: a cloud-native integration platform
 
Extending uBuild and uDeploy with Plugins
Extending uBuild and uDeploy with PluginsExtending uBuild and uDeploy with Plugins
Extending uBuild and uDeploy with Plugins
 
ApacheCon NA 2010 - Developing Composite Apps for the Cloud with Apache Tuscany
ApacheCon NA 2010 - Developing Composite Apps for the Cloud with Apache TuscanyApacheCon NA 2010 - Developing Composite Apps for the Cloud with Apache Tuscany
ApacheCon NA 2010 - Developing Composite Apps for the Cloud with Apache Tuscany
 
Mulesoft Connections to different companies, and different services
Mulesoft Connections to different companies, and different servicesMulesoft Connections to different companies, and different services
Mulesoft Connections to different companies, and different services
 
ECM and Open Source Software: A Disruptive Force in ECM Solutions
ECM and Open Source Software: A Disruptive Force in ECM SolutionsECM and Open Source Software: A Disruptive Force in ECM Solutions
ECM and Open Source Software: A Disruptive Force in ECM Solutions
 
Making Apache Camel work for you
Making Apache Camel work for you Making Apache Camel work for you
Making Apache Camel work for you
 
56k.cloud training
56k.cloud training56k.cloud training
56k.cloud training
 
Mule meetup 25thjan
Mule meetup 25thjanMule meetup 25thjan
Mule meetup 25thjan
 
São Paulo MuleSoft Meetup #5 - Runtime Fabric
São Paulo MuleSoft Meetup #5 - Runtime FabricSão Paulo MuleSoft Meetup #5 - Runtime Fabric
São Paulo MuleSoft Meetup #5 - Runtime Fabric
 
Spring boot microservice metrics monitoring
Spring boot   microservice metrics monitoringSpring boot   microservice metrics monitoring
Spring boot microservice metrics monitoring
 

More from Claus Ibsen

Low Code Integration with Apache Camel.pdf
Low Code Integration with Apache Camel.pdfLow Code Integration with Apache Camel.pdf
Low Code Integration with Apache Camel.pdfClaus Ibsen
 
Camel JBang - Quarkus Insights.pdf
Camel JBang - Quarkus Insights.pdfCamel JBang - Quarkus Insights.pdf
Camel JBang - Quarkus Insights.pdfClaus Ibsen
 
Camel Day Italy 2021 - What's new in Camel 3
Camel Day Italy 2021 - What's new in Camel 3Camel Day Italy 2021 - What's new in Camel 3
Camel Day Italy 2021 - What's new in Camel 3Claus Ibsen
 
DevNation Live 2020 - What's new with Apache Camel 3
DevNation Live 2020 - What's new with Apache Camel 3DevNation Live 2020 - What's new with Apache Camel 3
DevNation Live 2020 - What's new with Apache Camel 3Claus Ibsen
 
Red Hat Nordics 2020 - Apache Camel 3 the next generation of enterprise integ...
Red Hat Nordics 2020 - Apache Camel 3 the next generation of enterprise integ...Red Hat Nordics 2020 - Apache Camel 3 the next generation of enterprise integ...
Red Hat Nordics 2020 - Apache Camel 3 the next generation of enterprise integ...Claus Ibsen
 
SouJava May 2020: Apache Camel 3 - the next generation of enterprise integration
SouJava May 2020: Apache Camel 3 - the next generation of enterprise integrationSouJava May 2020: Apache Camel 3 - the next generation of enterprise integration
SouJava May 2020: Apache Camel 3 - the next generation of enterprise integrationClaus Ibsen
 
Cloud-Native Integration with Apache Camel on Kubernetes (Copenhagen October ...
Cloud-Native Integration with Apache Camel on Kubernetes (Copenhagen October ...Cloud-Native Integration with Apache Camel on Kubernetes (Copenhagen October ...
Cloud-Native Integration with Apache Camel on Kubernetes (Copenhagen October ...Claus Ibsen
 
State of integration with Apache Camel (ApacheCon 2019)
State of integration with Apache Camel (ApacheCon 2019)State of integration with Apache Camel (ApacheCon 2019)
State of integration with Apache Camel (ApacheCon 2019)Claus Ibsen
 
Serverless integration with Knative and Apache Camel on Kubernetes
Serverless integration with Knative and Apache Camel on KubernetesServerless integration with Knative and Apache Camel on Kubernetes
Serverless integration with Knative and Apache Camel on KubernetesClaus Ibsen
 
Apache Camel K - Copenhagen v2
Apache Camel K - Copenhagen v2Apache Camel K - Copenhagen v2
Apache Camel K - Copenhagen v2Claus Ibsen
 
Apache Camel K - Fredericia
Apache Camel K - FredericiaApache Camel K - Fredericia
Apache Camel K - FredericiaClaus Ibsen
 
JEEConf 2018 - Camel microservices with Spring Boot and Kubernetes
JEEConf 2018 - Camel microservices with Spring Boot and KubernetesJEEConf 2018 - Camel microservices with Spring Boot and Kubernetes
JEEConf 2018 - Camel microservices with Spring Boot and KubernetesClaus Ibsen
 
Camel riders in the cloud
Camel riders in the cloudCamel riders in the cloud
Camel riders in the cloudClaus Ibsen
 
Meetup Melbourne August 2017 - Agile Integration with Apache Camel microservi...
Meetup Melbourne August 2017 - Agile Integration with Apache Camel microservi...Meetup Melbourne August 2017 - Agile Integration with Apache Camel microservi...
Meetup Melbourne August 2017 - Agile Integration with Apache Camel microservi...Claus Ibsen
 
ApacheCon EU 2016 - Apache Camel the integration library
ApacheCon EU 2016 - Apache Camel the integration libraryApacheCon EU 2016 - Apache Camel the integration library
ApacheCon EU 2016 - Apache Camel the integration libraryClaus Ibsen
 
Developing Java based microservices ready for the world of containers
Developing Java based microservices ready for the world of containersDeveloping Java based microservices ready for the world of containers
Developing Java based microservices ready for the world of containersClaus Ibsen
 
Apache Camel - The integration library
Apache Camel - The integration libraryApache Camel - The integration library
Apache Camel - The integration libraryClaus Ibsen
 
Developing Java based microservices ready for the world of containers
Developing Java based microservices ready for the world of containersDeveloping Java based microservices ready for the world of containers
Developing Java based microservices ready for the world of containersClaus Ibsen
 
Developing Microservices with Apache Camel
Developing Microservices with Apache CamelDeveloping Microservices with Apache Camel
Developing Microservices with Apache CamelClaus Ibsen
 
Riga Dev Day 2016 - Microservices with Apache Camel & fabric8 on Kubernetes
Riga Dev Day 2016 - Microservices with Apache Camel & fabric8 on KubernetesRiga Dev Day 2016 - Microservices with Apache Camel & fabric8 on Kubernetes
Riga Dev Day 2016 - Microservices with Apache Camel & fabric8 on KubernetesClaus Ibsen
 

More from Claus Ibsen (20)

Low Code Integration with Apache Camel.pdf
Low Code Integration with Apache Camel.pdfLow Code Integration with Apache Camel.pdf
Low Code Integration with Apache Camel.pdf
 
Camel JBang - Quarkus Insights.pdf
Camel JBang - Quarkus Insights.pdfCamel JBang - Quarkus Insights.pdf
Camel JBang - Quarkus Insights.pdf
 
Camel Day Italy 2021 - What's new in Camel 3
Camel Day Italy 2021 - What's new in Camel 3Camel Day Italy 2021 - What's new in Camel 3
Camel Day Italy 2021 - What's new in Camel 3
 
DevNation Live 2020 - What's new with Apache Camel 3
DevNation Live 2020 - What's new with Apache Camel 3DevNation Live 2020 - What's new with Apache Camel 3
DevNation Live 2020 - What's new with Apache Camel 3
 
Red Hat Nordics 2020 - Apache Camel 3 the next generation of enterprise integ...
Red Hat Nordics 2020 - Apache Camel 3 the next generation of enterprise integ...Red Hat Nordics 2020 - Apache Camel 3 the next generation of enterprise integ...
Red Hat Nordics 2020 - Apache Camel 3 the next generation of enterprise integ...
 
SouJava May 2020: Apache Camel 3 - the next generation of enterprise integration
SouJava May 2020: Apache Camel 3 - the next generation of enterprise integrationSouJava May 2020: Apache Camel 3 - the next generation of enterprise integration
SouJava May 2020: Apache Camel 3 - the next generation of enterprise integration
 
Cloud-Native Integration with Apache Camel on Kubernetes (Copenhagen October ...
Cloud-Native Integration with Apache Camel on Kubernetes (Copenhagen October ...Cloud-Native Integration with Apache Camel on Kubernetes (Copenhagen October ...
Cloud-Native Integration with Apache Camel on Kubernetes (Copenhagen October ...
 
State of integration with Apache Camel (ApacheCon 2019)
State of integration with Apache Camel (ApacheCon 2019)State of integration with Apache Camel (ApacheCon 2019)
State of integration with Apache Camel (ApacheCon 2019)
 
Serverless integration with Knative and Apache Camel on Kubernetes
Serverless integration with Knative and Apache Camel on KubernetesServerless integration with Knative and Apache Camel on Kubernetes
Serverless integration with Knative and Apache Camel on Kubernetes
 
Apache Camel K - Copenhagen v2
Apache Camel K - Copenhagen v2Apache Camel K - Copenhagen v2
Apache Camel K - Copenhagen v2
 
Apache Camel K - Fredericia
Apache Camel K - FredericiaApache Camel K - Fredericia
Apache Camel K - Fredericia
 
JEEConf 2018 - Camel microservices with Spring Boot and Kubernetes
JEEConf 2018 - Camel microservices with Spring Boot and KubernetesJEEConf 2018 - Camel microservices with Spring Boot and Kubernetes
JEEConf 2018 - Camel microservices with Spring Boot and Kubernetes
 
Camel riders in the cloud
Camel riders in the cloudCamel riders in the cloud
Camel riders in the cloud
 
Meetup Melbourne August 2017 - Agile Integration with Apache Camel microservi...
Meetup Melbourne August 2017 - Agile Integration with Apache Camel microservi...Meetup Melbourne August 2017 - Agile Integration with Apache Camel microservi...
Meetup Melbourne August 2017 - Agile Integration with Apache Camel microservi...
 
ApacheCon EU 2016 - Apache Camel the integration library
ApacheCon EU 2016 - Apache Camel the integration libraryApacheCon EU 2016 - Apache Camel the integration library
ApacheCon EU 2016 - Apache Camel the integration library
 
Developing Java based microservices ready for the world of containers
Developing Java based microservices ready for the world of containersDeveloping Java based microservices ready for the world of containers
Developing Java based microservices ready for the world of containers
 
Apache Camel - The integration library
Apache Camel - The integration libraryApache Camel - The integration library
Apache Camel - The integration library
 
Developing Java based microservices ready for the world of containers
Developing Java based microservices ready for the world of containersDeveloping Java based microservices ready for the world of containers
Developing Java based microservices ready for the world of containers
 
Developing Microservices with Apache Camel
Developing Microservices with Apache CamelDeveloping Microservices with Apache Camel
Developing Microservices with Apache Camel
 
Riga Dev Day 2016 - Microservices with Apache Camel & fabric8 on Kubernetes
Riga Dev Day 2016 - Microservices with Apache Camel & fabric8 on KubernetesRiga Dev Day 2016 - Microservices with Apache Camel & fabric8 on Kubernetes
Riga Dev Day 2016 - Microservices with Apache Camel & fabric8 on Kubernetes
 

Recently uploaded

Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024The Digital Insurer
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...apidays
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbuapidays
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfOverkill Security
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Zilliz
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusZilliz
 

Recently uploaded (20)

Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source Milvus
 

Apache Camel Introduction

  • 1. Introduction to Apache Camel Claus Ibsen Principal Software Engineer, FuseSource September 2010 1
  • 2. When you joined today‟s session … Audio is broadcast from your computer Submit your questions via the Chat Window Contact today‟s Host via the Chat Window
  • 3. Today's speaker - Claus Ibsen  Principal Software Engineer at FuseSource • Full time Apache Camel hacker  Apache Camel committer  Co-author of Camel in Action book • Available in late 2010  Contact • claus.ibsen@fusesource.com • http://davsclaus.blogspot.com/ • http://twitter.com/davsclaus http://www.manning.com/ibsen 3 © 2010 Progress Software Corporation
  • 4. Why the name Camel? Camel is easy to remember and type 4 © 2010 Progress Software Corporation
  • 5. Agenda  The birth of Apache Camel  What is Apache Camel  A little example  What's included in the box?  Running Camel  Another Example  The Camel Community  Q and A 5 © 2010 Progress Software Corporation
  • 6. The birth of Apache Camel • Camel’s parents 6 © 2010 Progress Software Corporation
  • 7. The birth of Apache Camel  Initial Commit Log r519901 | jstrachan | 2007-03-19 11:54:57 +0100 (Mon, 19 Mar 2007) | 1 line Initial checkin of Camel routing library  Apache Camel 1.0 released June 2007  Apache Camel is 3 years old 7 © 2010 Progress Software Corporation
  • 8. The birth of Apache Camel  My initial commit r640963 | davsclaus | 2008-03-25 21:07:10 +0100 (Tue, 25 Mar 2008) | 1 line Added unit test for mistyped URI 8 © 2010 Progress Software Corporation
  • 9. Agenda  The birth of Apache Camel  What is Apache Camel  A little example  What's included in the box?  Running Camel  Another Example  The Camel Community  Q and A 9 © 2010 Progress Software Corporation
  • 10. What is Apache Camel  Quote from the web site Apache Camel is a Powerful Open Source Integration Framework based on known Enterprise Integration Patterns 10 © 2010 Progress Software Corporation
  • 11. What is Apache Camel  Why do we need Integration? • Your apps are build using different tech stacks • Critical for your business to integrate  Why Integration Framework? • Framework do the heavy lifting • Focus on business problem • Not "reinventing the wheel" 11 © 2010 Progress Software Corporation
  • 12. What is Apache Camel  What is Enterprise Integration Patterns? 12 © 2010 Progress Software Corporation
  • 13. What is Apache Camel  What is Enterprise Integration Patterns? 13 © 2010 Progress Software Corporation
  • 14. What is Apache Camel  What is Enterprise Integration Patterns? Its a book 14 © 2010 Progress Software Corporation
  • 15. What is Apache Camel  Lets look at one of the patterns 15 © 2010 Progress Software Corporation
  • 16. What is Apache Camel  Use Case ActiveMQ WebSphereMQ 16 © 2010 Progress Software Corporation
  • 17. What is Apache Camel  Filter Pattern 17 © 2010 Progress Software Corporation
  • 18. What is Apache Camel  Filter Pattern from filter send to A message B 18 © 2010 Progress Software Corporation
  • 19. What is Apache Camel  Filter Pattern from(A) filter(predicate) to(B) 19 © 2010 Progress Software Corporation
  • 20. What is Apache Camel  Filter Pattern from(A) .filter(isWidget) .to(B) 20 © 2010 Progress Software Corporation
  • 21. What is Apache Camel  Filter Route from(A).filter(isWidget).to(B); 21 © 2010 Progress Software Corporation
  • 22. What is Apache Camel  Filter Route isWidget = xpath(“/quote/product = „widget‟”); from(A).filter(isWidget).to(B); 22 © 2010 Progress Software Corporation
  • 23. What is Apache Camel  Filter Route Endpoint A = endpoint(“activemq:queue:quote”); Endpoint B = endpoint(“mq:quote”); Predicate isWidget = xpath(“/quote/product = „widget‟”); from(A).filter(isWidget).to(B); 23 © 2010 Progress Software Corporation
  • 24. What is Apache Camel  Filter Route - Java DSL public void configure() throws Exception { Endpoint A = endpoint("activemq:queue:quote"); Endpoint B = endpoint("mq:quote"); Predicate isWidget = xpath("/quote/product = „widget‟"); from(A).filter(isWidget).to(B); } 24 © 2010 Progress Software Corporation
  • 25. What is Apache Camel  Filter Route - Java DSL import org.apache.camel.builder.RouteBuilder; import static org.apache.camel.builder.xml.XPathBuilder.xpath; public class FilterRoute extends RouteBuilder { public void configure() throws Exception { Endpoint A = endpoint("activemq:queue:quote"); Endpoint B = endpoint("mq:quote"); Predicate isWidget = xpath("/quote/product = „widget‟"); from(A).filter(isWidget).to(B); } } 25 © 2010 Progress Software Corporation
  • 26. What is Apache Camel  Filter Route - Java DSL import org.apache.camel.builder.RouteBuilder; public class FilterRoute extends RouteBuilder { public void configure() throws Exception { from("activemq:queue:quote") .filter().xpath("/quote/product =„widget‟") .to("mq:quote"); } } 26 © 2010 Progress Software Corporation
  • 27. What is Apache Camel  IDE Tooling Code Assistance JavaDoc 27 © 2010 Progress Software Corporation
  • 28. What is Apache Camel  IDE Tooling Code Assistance 28 © 2010 Progress Software Corporation
  • 29. What is Apache Camel  Lets look at the most famous pattern 29 © 2010 Progress Software Corporation
  • 30. What is Apache Camel  Content Based Router 30 © 2010 Progress Software Corporation
  • 31. What is Apache Camel  Content Based Router - Spring XML <camelContext> <route> <from uri="activemq:NewOrders"/> <choice> <when> <xpath>/order/product = 'widget'</xpath> <to uri="activemq:Orders.Widgets"/> </when> <otherwise> <to uri="activemq:Orders.Gadgets"/> </otherwise> </choice> </route> </camelContext> 31 © 2010 Progress Software Corporation
  • 32. What is Apache Camel  Content Based Router - Java DSL from("activemq:NewOrders") .choice() .when().xpath(“/order/product = 'widget'”) .to(“activemq:Orders.Widget”) .otherwise() .to(“acitvemq:Orders.Gadget”); 32 © 2010 Progress Software Corporation
  • 33. What is Apache Camel  Summary • Camel is an integration framework • Based on Enterprise Integration Patterns • Routing and mediation • Easy to use DSL to define routes • No heavy specification • No container dependency • Payload agnostic • Connectivity to a great wealth of transports 33 © 2010 Progress Software Corporation
  • 34. What is Apache Camel  Mission Statement Making integration easier and more accessible to developers 34 © 2010 Progress Software Corporation
  • 35. Agenda  The birth of Apache Camel  What is Apache Camel  A little example  What's included in the box?  Running Camel  Another Example  The Camel Community  Q and A 35 © 2010 Progress Software Corporation
  • 36. A little example  Based on community user (Gunnar Hillert) • http://hillert.blogspot.com/2009/09/camellos-discovering-apache- camel-ii.html  Goals • 1) Pickup files from a directory • 2) Make sure we only pickup 3 files per 30 seconds • 3) Store into JMS queue • 4) Listen on JMS queue • 5) And upload file to FTP server 36 © 2010 Progress Software Corporation
  • 37. A little example  Goals using Enterprise Integration Patterns 1 2 3 4 5  Goals • 1) Pickup files from a directory • 2) Make sure we only pickup 3 files per 30 seconds • 3) Store into JMS queue • 4) Listen on JMS queue • 5) And upload file to FTP server 37 © 2010 Progress Software Corporation
  • 38. A little example  Goals using Enterprise Integration Patterns from throttle to from to  Goals • 1) Pickup files from a directory • 2) Make sure we only pickup 3 files per 30 seconds • 3) Store into JMS queue • 4) Listen on JMS queue • 5) And upload file to FTP server 38 © 2010 Progress Software Corporation
  • 39. A little example  Camel DSL in XML <camelContext> <route> <from uri="file:camellos/inbox?move=.done"/> <throttle maximumRequestsPerPeriod="3” timePeriodMillis="30000”> <to uri="activemq:queue:camellos"/> </throttle> </route> <route> <from uri="activemq:queue:camellos"/> <to uri="ftp://admin:secret@localhost:3333"/> </route> </camelContext> 39 © 2010 Progress Software Corporation
  • 40. Agenda  The birth of Apache Camel  What is Apache Camel  A little example  What's included in the box?  Running Camel  Another Example  The Camel Community  Q and A 40 © 2010 Progress Software Corporation
  • 41. What's included in the box?  Highlights of whats included in Camel 41 © 2010 Progress Software Corporation
  • 42. What's included in the box?  50+ EIP patterns http://camel.apache.org/enterprise-integration-patterns.html 42 © 2010 Progress Software Corporation
  • 43. What's included in the box?  70+ Components activemq crypto flatpack irc ldap activemq-journal cxf freemarker javaspace mail/imap/pop3 amqp cxfrs ftp/ftps/sftp jbi mina atom dataset gae jcr mock bean direct hdfs jdbc msv bean validation esper hibernate jetty nagios browse event hl7 jms netty cache exec http jpa nmr cometd file ibatis jt/400 printer http://camel.apache.org/components.html 43 © 2010 Progress Software Corporation
  • 44. What's included in the box?  70+ Components properties scalate stream xslt quartz seda string-template ejb quickfix servlet test ref smooks timer restlet smpp validation rmi snmp velocity rnc spring-integration vm rng spring-security xmpp rss sql xquery http://camel.apache.org/components.html 44 © 2010 Progress Software Corporation
  • 45. What's included in the box?  18 Data Formats bindy protobuf castor serialization csv soap crypto tidy markup flatpack xml beans gzip xml security hl7 xstream jaxb zip json dozer http://camel.apache.org/data-format.html 45 © 2010 Progress Software Corporation
  • 46. What's included in the box?  Data Format from("activemq:QueueWithJavaObjects”) .marshal().jaxb() .to("mq:QueueWithXmlMessages"); 46 © 2010 Progress Software Corporation
  • 47. What's included in the box?  Predicates & Expressions BeanShell PHP EL Python Groovy Ruby JavaScript Simple JSR 223 SQL OGNL XPath MVEL XQuery http://camel.apache.org/languages.html 47 © 2010 Progress Software Corporation
  • 48. What's included in the box?  DSL in 3 programming languages Java XML from(A).filter(isWidget).to(B); <route> <from ref="A"/> <filter> <xpath>/quote/product = „widget‟</xpath> <to ref="B"/> </filter> </route> from(A) filter(isWidget) --> B Scala 48 © 2010 Progress Software Corporation
  • 49. What's included in the box?  Type Converters INFO DefaultTypeConverter - Loaded 148 type converters 49 © 2010 Progress Software Corporation
  • 50. What's included in the box?  Custom Type Converters @Converter public class MyTypeConverter { @Converter public String toString(MyOrder order) { StringBuilder sb = new StringBuilder(); ... return sb.toString(); } } # META-INF/services/org/apache/camel/TypeConverter com.acme.converters META-INF file in the JAR 50 © 2010 Progress Software Corporation
  • 51. What's included in the box?  Powerful bean integration • Adapt to your beans • EIP as @annotations - @Produce - @Consume - @DynamicRouter - @RecipientList - @RoutingSlip more to come in future releases ... 51 © 2010 Progress Software Corporation
  • 52. What's included in the box?  Bean as Message Translator 52 © 2010 Progress Software Corporation
  • 53. What's included in the box?  Bean as Message Translator from("activemq:Incoming”). beanRef("myBeanName”, “someMethod"). to("activemq:Outgoing"); public class Foo { public String someMethod(String name) { return “Hello “ + name; } } 53 © 2010 Progress Software Corporation
  • 54. What's included in the box?  Bean Parameter Binding with XPath public class Foo { public String processOrder( String orderAsXml, @XPath(“/order/@id") String oid, @Header("JMSCorrelationID") String cid) { ... } } 54 © 2010 Progress Software Corporation
  • 55. What's included in the box?  Sending message public class Foo { @Produce(uri = "activemq:foo.bar") ProducerTemplate producer; public void doSomething() { if (whatEver) { producer.sendBody("Hello World"); } } } 55 © 2010 Progress Software Corporation
  • 56. What's included in the box?  Receiving message public class Foo { @Consume(uri = "activemq:cheese") public void onCheese(String name) { ... } } 56 © 2010 Progress Software Corporation
  • 57. What's included in the box?  Test Kit • camel-test.jar • JUnit based (3.x and 4.x) • Supports Spring • Easy to test • Quick prototyping 57 © 2010 Progress Software Corporation
  • 58. What's included in the box? extend CamelTestSupport  Test Kit from IDE Right Click -> Run Debug Inline RouteBuilder 58 © 2010 Progress Software Corporation
  • 59. What's included in the box?  Managed • JMX API • REST API 59 © 2010 Progress Software Corporation
  • 60. What's included in the box?  Web console • REST API 60 © 2010 Progress Software Corporation
  • 61. What's included in the box?  FuseSource Rider • 61 © 2010 Progress Software Corporation
  • 62. What's included in the box?  Summary • 50+ EIP patterns • 70+ Connectivity components • 15+ Data formats • 10+ Languages • DSL in multiple flavors (Java, XML, Scala, Groovy) • Automatic type conversion • Strong bean support • Test Kit • Management (JMX, REST) • Web console 62 © 2010 Progress Software Corporation
  • 63. Agenda  The birth of Apache Camel  What is Apache Camel  A little example  What's included in the box?  Running Camel  Another Example  The Camel Community  Q and A 63 © 2010 Progress Software Corporation
  • 64. Running Camel  Riding the Camel 64 © 2010 Progress Software Corporation
  • 65. Running Camel  Camel is not a server  Camel is lightweight and embeddable  Known Deployment Options • Standalone Java Application Known Containers Apache ServiceMix • Web Application Apache ActiveMQ • J2EE Application Apache Tomcat • JBI Jetty JBoss • OSGi IBM WebSphere • Google App Engine BEA WebLogic Oracle OC4j • Java Web Start GAE • Spring Application ... others 65 © 2010 Progress Software Corporation
  • 66. Running Camel  Java Application CamelContext context = new DefaultCamelContext(); context.addRoutes(new MyRouteBuilder()); context.start();  Spring Application <camelContext> <package>com.acme.quotes</package> </camelContext> 66 © 2010 Progress Software Corporation
  • 67. Agenda  The birth of Apache Camel  What is Apache Camel  A little example  What's included in the box?  Running Camel  Another Example  The Camel Community  Q and A 67 © 2010 Progress Software Corporation
  • 68. Another Example  Rider Auto Parts Example by Jonathan Anstey http://architects.dzone.com/articles/apache-camel-integration 68 © 2010 Progress Software Corporation
  • 69. Another Example  Rider Auto Parts Example - 3 Routes 1 69 © 2010 Progress Software Corporation
  • 70. Another Example  Rider Auto Parts Example - 3 Routes 1 2 70 © 2010 Progress Software Corporation
  • 71. Another Example  Rider Auto Parts Example - 3 Routes 1 3 2 71 © 2010 Progress Software Corporation
  • 72. Another Example  Rider Auto Parts Example - 1st Route from 1 to public class Route1 extends RouteBuilder { public void configure() throws Exception { from("ftp:user@rider.com?password=secret") .to("activemq:queue:incoming"); } } 72 © 2010 Progress Software Corporation
  • 73. Another Example  Rider Auto Parts Example - 2nd Route from to 2 public class Route2 extends RouteBuilder { public void configure() throws Exception { from("jetty:http://localhost:8080/orders") .inOnly("activemq:queue:incoming") .transform().constant("OK"); } } 73 © 2010 Progress Software Corporation
  • 74. Another Example  Rider Auto Parts Example - 3rd Route 3 from to choice route on next slide 74 © 2010 Progress Software Corporation
  • 75. Another Example  Rider Auto Parts Example - 3rd Route public class Route3 extends RouteBuilder { public void configure() throws Exception { JaxbDataFormat jaxb = new JaxbDataFormat("com.rider"); from("activemq:queue:incoming") .convertBodyTo(String.class) .choice() .when().method("helper”, "isXml") .unmarshal(jaxb) .to("activemq:queue:order") .when().method("helper”, "isCsv") .unmarshal().csv() .beanRef("orderService”, "csvToXml") .to("activemq:queue:order") } } 75 © 2010 Progress Software Corporation
  • 76. Agenda  The birth of Apache Camel  What is Apache Camel  A little example  What's included in the box?  Running Camel  Another Example  The Camel Community  Q and A 76 © 2010 Progress Software Corporation
  • 77. The Camel Community  Camel website • 52% increase (2010 over 2009) • Average 2200 visits per weekday (2000 - 2500)  High activity on mailing list 77 © 2010 Progress Software Corporation
  • 78. The Camel Community  20 committers  High commit activity http://markmail.org/ 78 © 2010 Progress Software Corporation
  • 79. The Camel Community  Books - Bestseller • Manning top-15 year to date (2010) #10 79 © 2010 Progress Software Corporation
  • 80. The Camel Community  JIRA tickets Total 3106 Open 136 (4%) Resolved 2970 (96%) Bugs 2 (2% open) Oldest Bug Dec 2009 Sep 6th 2010 80 © 2010 Progress Software Corporation
  • 81. The Camel Community  A lot in each new release Release Date Tickets Camel 2.0 Aug 2009 760 Camel 2.1 Dec 2009 303 Camel 2.2 Feb 2010 180 Camel 2.3 May 2010 278 Camel 2.4 July 2010 182 Camel 2.5 Sep 2010 170+ 81 © 2010 Progress Software Corporation
  • 82. The Camel Community  3rd party integrating Camel • Apache ServiceMix • Apache ActiveMQ • Apache James In Progress • OpenESB • Smooks • Progress Actional Diagnostics • Doozer • FuseHQ • Open eHealth Integration Platform • Grails Camel Plugin • Play Framework • Akka • Scalate • JBoss Drools • JBoss ESB 82 © 2010 Progress Software Corporation
  • 83. Agenda  The birth of Apache Camel  What is Apache Camel  A little example  What's included in the box?  Running Camel  Another Example  The Camel Community  Q and A 83 © 2010 Progress Software Corporation
  • 84. Q and A  Where do I get more information? Camel website: http://camel.apache.org Camel article: http://architects.dzone.com/articles/apache-camel-integration FuseSource website: http://fusesource.com Camel in Action book: http://manning.com/ibsen 84 © 2010 Progress Software Corporation
  • 85. Q and A 85 © 2010 Progress Software Corporation