Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/2488222.2488269acmconferencesArticle/Chapter ViewAbstractPublication PagesdebsConference Proceedingsconference-collections
tutorial

Tutorial: open source enterprise application integration - introducing the event processing capabilities of apache camel

Published: 29 June 2013 Publication History

Abstract

"Interesting applications rarely live in isolation." ([1], xxix) With this sentence G. Hohpe and B. Woolf start the introduction to their book Enterprise Integration Pattern: Designing, Building, and Deploying Messaging Solutions. While the statement is valid now for more than ten years, Gartner estimates today the cost increase targeting integration aspects for midsize to large companies at about 33% within the next three years (cf. [2]). The expected increase will be mainly driven by the integration of cloud services and mobile devices. Since event processing addresses clearly problems arising with the growth of computational distribution, particularly with the increasing number of mobile devices or cloud services, integration is a topic that needs to be addressed by event processing functionalities.
One of the frameworks within the integration domain is Apache Camel. Since it's initial release in 2007, the framework has gained quite some attention - not only within the open-source arena. Apache Camel has a strong focus on enterprise application integration since it implements well known Enterprise Integration Patterns (EIP's) (cf. [1]). This work reveals the event processing capabilities of Apache Camel alongside a logistics parcel delivery process. The delivery process facilitates the scenario descriptions to exemplify the event processing functionalities within a real-world context. All coding examples, supporting the functionality demonstration, are setup around the shipment of parcels.

References

[1]
G. Hohpe and B. Woolf. Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions. Addison-Wesley Longman Publishing Co., Inc., Boston, MA, USA, 2003.
[2]
D. Chandrasekhar. Gartner predictions 2013 for application integration: My take. Technical report, Reality Check, 2013.
[3]
W. A. Ruh, F. X. Maginnis, and W. J. Brown. Enterprise Application Integration: A Wiley Tech Brief. John Wiley & Sons, 2002.
[4]
J. Strachan. Initial checkin of camel routing library, 03 2007.
[5]
C. Ibsen. Apache camel was awesome from v1.0 onward. Technical report, DZone, 2013.
[6]
The Apache Software Foundation. Apache camel. Technical report, Apache Software Foundation, 2013.
[7]
The Apache Software Foundation. Happy 5 years birthday apache camel. Technical report, Apache Software Foundation, 2013.
[8]
D. C. Luckham. Event Processing for Business: Organizing the Real-Time Enterprise. John Wiley & Sons, 2011.
[9]
O. Etzion and P. Niblett. Event Processing in Action. Manning Publications Co., 2011.
[10]
R. v. Ammon, C. Silberbauer, and C. Wolff. Domain specific reference models for event patterns - for faster developing of business activity monitoring applications. In VIPSI 2007, October 2007.
[11]
C. Emmersberger, F. Springer, and C. Wolff. Location based logistics services and event driven business process management. In D. Tavangarian, T. Kirste, D. Timmermann, U. Lucke, and D. Versick, editors, Intelligent Interactive Assistance and Mobile Multimedia Computing, number 53 in Communications in Computer and Information Science, pages 167--177. Springer, 2009.
[12]
D. C. Luckham. The Power of Events: An Introduction to Complex Event Processing in Distributed Enterprise Systems. Addison-Wesley, November 2001.
[13]
C. Ibsen and J. Anstey. Camel in Action. Manning Publications Co., 2011.
[14]
N. M. Josuttis. SOA in Practice - The Art of Distributed System Design. O'Reilly Media, Inc., first edition edition, 2007.
[15]
T. Berners-Lee, R. Fielding, and L. Masinter. Uniform resource identifier (uri): Generic syntax. Request for Comments 3986, The Internet Engineering Task Force (IETF), Network Working Group, http://tools.ietf.org/pdf/rfc3986.pdf, January 2005.
[16]
M. Welsh. Seda: An architecture for highly concurrent server applications. Project report, Harvard University, http://www.eecs.harvard.edu/ mdw/proj/seda/, May 2006.
[17]
M Hapner, R. Burridge, R. Sharma, J. Fialli, and Stout K. Java message service - the jms api is an api for accessing enterprise messaging systems for java programms. Specification Version 1.1, Sun microsystems, April 2002.
[18]
Spring. Spring java application framework. Reference Documentation 3.0, Spring Source, http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/pdf/spring-framework-reference.pdf, 2011.
[19]
R. v. Ammon, C. Emmersberger, T. Ertlmaier, O. Etzion, T. Paulus, and F. Springer. Existing and future standards for event-driven business process management. In Proceedings of the Third ACM International Conference on Distributed Event-Based Systems, DEBS 2009. ACM, July 2009.
[20]
F. Buschmann. Pattern oriented software architecture: a system of patters. John Wiley & Sons, 1st edition, July 1996.
[21]
P. Kolb. Realization of eai patterns with apache camel. Studienarbeit 2127, Institut für Architektur von Anwendungssystemen, Universität Stuttgart, 04 2008.

Cited By

View all
  • (2018)Survey on the run‐time systems of enterprise application integration platforms focusing on performanceSoftware: Practice and Experience10.1002/spe.267049:3(341-360)Online publication date: 13-Dec-2018
  • (2014)Experiences with Business Process Model and Notation for Modeling Integration PatternsProceedings of the 10th European Conference on Modelling Foundations and Applications - Volume 856910.1007/978-3-319-09195-2_17(254-266)Online publication date: 21-Jul-2014

Index Terms

  1. Tutorial: open source enterprise application integration - introducing the event processing capabilities of apache camel

      Recommendations

      Reviews

      Christoph F. Strnadl

      The functionality of a message-passing software system such as Camel can be reformulated in an event-centric manner. This is the main result of this work, although from a theoretical viewpoint, the result is fairly trivial. Furthermore, the paper does not fully live up to the high standards of a tutorial because of the sloppy way it describes the more advanced (and, hence, more difficult to explain) concepts of Camel. The basic concept of the paper is promising. The authors first introduce implementation-independent basic notions of an event-driven architecture (EDA), such as event objects and types, event consumers and producers, event processing network, and a reference use case (parcel delivery), to provide the semantics for short examples. After the introduction of related terms, the authors immediately reflect on the particular way Camel implements these concepts, such as using a "message" as its basic construct for capturing an event. Short Extensible Markup Language (XML) or Java code examples demonstrate how a developer would actually work with notions such as a Camel component or endpoint. Capabilities of event-processing agents are introduced using a pattern-oriented approach for filtering, aggregation, splitting, and translating messages. However, it is with the more elaborate concepts (like Camel's route and routebuilder) that I miss the clarity that would make the paper a true tutorial. For instance, the authors suddenly switch to the Java Domain Specific Language (DSL) without explaining this step. Additionally, the paper spends too much time explaining fairly basic ideas such as filtering of messages (= events) without highlighting the basic building blocks of the Java DSL. In summary, an enterprise integration software architect or developer new to event processing will find about half the paper quite useful. For an introduction to the more advanced concepts of Camel or an EDA, however, the reader will need to consult additional sources. Online Computing Reviews Service

      Access critical reviews of Computing literature here

      Become a reviewer for Computing Reviews.

      Comments

      Information & Contributors

      Information

      Published In

      cover image ACM Conferences
      DEBS '13: Proceedings of the 7th ACM international conference on Distributed event-based systems
      June 2013
      360 pages
      ISBN:9781450317580
      DOI:10.1145/2488222
      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

      Sponsors

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      Published: 29 June 2013

      Permissions

      Request permissions for this article.

      Check for updates

      Author Tags

      1. event processing
      2. integration framework

      Qualifiers

      • Tutorial

      Conference

      DEBS '13

      Acceptance Rates

      DEBS '13 Paper Acceptance Rate 16 of 58 submissions, 28%;
      Overall Acceptance Rate 145 of 583 submissions, 25%

      Contributors

      Other Metrics

      Bibliometrics & Citations

      Bibliometrics

      Article Metrics

      • Downloads (Last 12 months)9
      • Downloads (Last 6 weeks)1
      Reflects downloads up to 22 Sep 2024

      Other Metrics

      Citations

      Cited By

      View all
      • (2018)Survey on the run‐time systems of enterprise application integration platforms focusing on performanceSoftware: Practice and Experience10.1002/spe.267049:3(341-360)Online publication date: 13-Dec-2018
      • (2014)Experiences with Business Process Model and Notation for Modeling Integration PatternsProceedings of the 10th European Conference on Modelling Foundations and Applications - Volume 856910.1007/978-3-319-09195-2_17(254-266)Online publication date: 21-Jul-2014

      View Options

      Get Access

      Login options

      View options

      PDF

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader

      Media

      Figures

      Other

      Tables

      Share

      Share

      Share this Publication link

      Share on social media