Camel ist ein frei verfügbares Business Integration Framework. Es bedient also die Notwendigkeit in vielen Unternehmensanwendungen, andere Komponenten oder Systeme ansteuern und integrieren zu müssen.
Die Muster, nach denen dies geschieht und die nichtfunktionalen Anforderungen, denen man sich bei der Integration konfrontiert sieht, sind über viele Unternehmensanwendungen betrachtet vergleichbar. Und so tritt Camel an, einem diese "Grundlast" auf vereinheitlichte Weise zu nehmen.
Die theoretische Grundlage bilden die sogenannten Enterprise Integration Patterns, wie sie in der einschlägigen Literatur beschrieben sind (das Standardwerk zu diesem Thema findet man hier). Im wesentlichen werden hierbei zur Beschreibung Symbole mit einer bestimmten Semantik eingesetzt und auf diese Weise Rezepte zur Lösung bestimmer (Standard-)Probleme formuliert. Camel bietet die Verwendung dieser Patterns auf unterschiedliche Weise an:
- Als DSL, programmierbar in XML, Java, Groovy und Scala
- Über eine GUI, welche diese Symbole zur "Programmierung" anbietet
Camel erhebt den Anspruch, auf vielen Gebieten "einfach oder "leicht" zu sein:
- Im Wesentlichen wird die Laufzeitumgebung durch eine handvoll JARs definiert. Es ist kein Laufzeit-Container notwendig, wenngleich möglich.
- Es gibt eine große Zahl an Komponenten, die eine Reihe von Anwendungsfällen, Zielsystemen und Konvertern abbilden, welche aber auch durch eigene Lösungen erweitert werden können.
- Die Konfiguration ist einfach (s. o.).
- Die transportierten Daten basieren nativ auf Java POJOs. Konvertierungen in ein anderes Datenformat muss nur im Bedarfsfall erfolgen.
- Camel arbeitet gut mit Spring zusammen.
Keine Kommentare:
Kommentar veröffentlichen