when camel smiles
TRANSCRIPT
![Page 1: When Camel Smiles](https://reader031.vdocuments.mx/reader031/viewer/2022031912/55a946711a28ab943e8b4679/html5/thumbnails/1.jpg)
Pace
mak
er: J
ava
When Camel SmilesOREST IVASIV
1/18/2015 @halyph
![Page 2: When Camel Smiles](https://reader031.vdocuments.mx/reader031/viewer/2022031912/55a946711a28ab943e8b4679/html5/thumbnails/2.jpg)
Pace
mak
er: J
ava
Integration concept
Camel Intro
Sample route
Camel community
1/18/2015 @halyph2
Agenda
![Page 3: When Camel Smiles](https://reader031.vdocuments.mx/reader031/viewer/2022031912/55a946711a28ab943e8b4679/html5/thumbnails/3.jpg)
Pace
mak
er: J
ava
1/18/2015 @halyph3
What is Apache Camel?
Apache Camel ™ is a versatile open-source integration framework based on known Enterprise Integration Patterns.
Is not ESB (Servicemix, Mule)Is not Message Broker (ActiveMQ, RabbitMQ)Is not a runtime container (see Tomcat)
![Page 4: When Camel Smiles](https://reader031.vdocuments.mx/reader031/viewer/2022031912/55a946711a28ab943e8b4679/html5/thumbnails/4.jpg)
Pace
mak
er: J
ava
1. Enterprise integration—how to integrate independent applications so that they can work together.
2. An enterprise application often incorporates an n-tier architecture enabling it to be distributed across several computers.
3. Q: Why is an n-tier architecture considered application distribution and not application integration?
◦ the communicating parts are tightly coupled
◦ communication between tiers tends to be synchronous
4. Communication between tiers tends to be synchronous
1/18/2015 @halyph4
Distributed Applications vs. Integration
![Page 5: When Camel Smiles](https://reader031.vdocuments.mx/reader031/viewer/2022031912/55a946711a28ab943e8b4679/html5/thumbnails/5.jpg)
Pace
mak
er: J
ava
1/18/2015 @halyph5
Complexity of Integration
No Tool
Integration Framework
Enterprise Service Bus
Integration Suite
Low High
ConnectivityRoutingTransformation
IntegrationToolingMonitoringSupport
Business Process ManagementBig Data / MDMRegistry / RepositoryRule Engine“You Name It”
Custom integration
![Page 6: When Camel Smiles](https://reader031.vdocuments.mx/reader031/viewer/2022031912/55a946711a28ab943e8b4679/html5/thumbnails/6.jpg)
Pace
mak
er: J
ava
1/18/2015 @halyph6
Message
![Page 7: When Camel Smiles](https://reader031.vdocuments.mx/reader031/viewer/2022031912/55a946711a28ab943e8b4679/html5/thumbnails/7.jpg)
Pace
mak
er: J
ava
1/18/2015 @halyph7
Exchange
![Page 8: When Camel Smiles](https://reader031.vdocuments.mx/reader031/viewer/2022031912/55a946711a28ab943e8b4679/html5/thumbnails/8.jpg)
Pace
mak
er: J
ava
1/18/2015 @halyph8
CamelContext
![Page 9: When Camel Smiles](https://reader031.vdocuments.mx/reader031/viewer/2022031912/55a946711a28ab943e8b4679/html5/thumbnails/9.jpg)
Pace
mak
er: J
ava
1/18/2015 @halyph9
Camel Architecture
![Page 10: When Camel Smiles](https://reader031.vdocuments.mx/reader031/viewer/2022031912/55a946711a28ab943e8b4679/html5/thumbnails/10.jpg)
Pace
mak
er: J
ava
General use Direct, seda, file, bean, log, timer
Search, big data, cashing Lucene, solr, elasticsearch
Hdfs, s3, mongodb
Ehcache, hazelcast
Management Jmx, ldap, splunk, zookeeper
Integration http, servlet, cxf, jms
protocols Mina, netty, pop3, imap
1/18/2015 @halyph10
Component Categories
![Page 11: When Camel Smiles](https://reader031.vdocuments.mx/reader031/viewer/2022031912/55a946711a28ab943e8b4679/html5/thumbnails/11.jpg)
Pace
mak
er: J
ava
1/18/2015 @halyph11
ls camel/components
![Page 12: When Camel Smiles](https://reader031.vdocuments.mx/reader031/viewer/2022031912/55a946711a28ab943e8b4679/html5/thumbnails/12.jpg)
Pace
mak
er: J
ava
• You found a component… now what?◦ Review the spec page, samples, unit tests
◦ Include camel-[component] jar in your project◦ Add dependency to your pom.xml
◦ w/o maven (gradle) just add your jars to your classpath
◦ Create a basic unit test◦ Copy/paste from component test
◦ Sanity test your setup
◦ Validate desired config option
◦ Integrate your component with your app◦ Is you CamelContent setup?
◦ Is your RouteBuilder wired in?
1/18/2015 @halyph12
How to use a component
![Page 13: When Camel Smiles](https://reader031.vdocuments.mx/reader031/viewer/2022031912/55a946711a28ab943e8b4679/html5/thumbnails/13.jpg)
Pace
mak
er: J
ava
1/18/2015 @halyph13
Sample Route
![Page 14: When Camel Smiles](https://reader031.vdocuments.mx/reader031/viewer/2022031912/55a946711a28ab943e8b4679/html5/thumbnails/14.jpg)
Pace
mak
er: J
ava
1/18/2015 @halyph14
Sample Route (cont.)
![Page 15: When Camel Smiles](https://reader031.vdocuments.mx/reader031/viewer/2022031912/55a946711a28ab943e8b4679/html5/thumbnails/15.jpg)
Pace
mak
er: J
ava
1/18/2015 @halyph15
Top Camel contributors$ git shortlog -ns
8095 Claus Ibsen2853 Willem Ning Jiang1385 James Strachan930 Willem Jiang757 Hadrian Zbarcea648 Babak Vahdat487 Christian Mueller478 Jonathan Anstey196 cmueller194 Hiram R. Chirino143 Christian Schneider139 Henryk Konsek136 Daniel Kulp130 Moulliard Charles108 Gert Vanthienen100 Dhiraj Bokde
![Page 16: When Camel Smiles](https://reader031.vdocuments.mx/reader031/viewer/2022031912/55a946711a28ab943e8b4679/html5/thumbnails/16.jpg)
Pace
mak
er: J
ava
Author: James Strachan <[email protected]> 2007-03-19 12:54:57
1/18/2015 @halyph16
Camel initial commit`
Apache ActiveMQApache CamelApache ServiceMixGroovy programming language
![Page 17: When Camel Smiles](https://reader031.vdocuments.mx/reader031/viewer/2022031912/55a946711a28ab943e8b4679/html5/thumbnails/17.jpg)
Pace
mak
er: J
ava
1/18/2015 @halyph17
Books
![Page 18: When Camel Smiles](https://reader031.vdocuments.mx/reader031/viewer/2022031912/55a946711a28ab943e8b4679/html5/thumbnails/18.jpg)
Pace
mak
er: J
ava
• Camel One 2011-2013 (http://camelone.org)
• DevNation 2014 (http://www.devnation.org)
1/18/2015 @halyph18
Conferences
![Page 19: When Camel Smiles](https://reader031.vdocuments.mx/reader031/viewer/2022031912/55a946711a28ab943e8b4679/html5/thumbnails/19.jpg)
Pace
mak
er: J
ava
Q&A
1/18/2015 @halyph19