background preloader

Camel

Camel
Related:  Integration & Middleware

CXF » Advanced Apache Camel logging and best practices Middleware Warez Apache Camel supports a mapped diagnostic context which can be used to improve log entries, but also there is a log component which makes it easier to create log entries. Together they can be used to create foundations of activity monitoring without need to deploy another tool or database. Logging anti patterns First of all let’s go throught logging anti patterns described years ago by Gojko Adzic. Single log file for all peopleLack of hierarchy in log categories (that’s mine idea)Incomplete data in entries (covers also one information split to multiple entries)Different separators in single lineInconsistent log entry format (covers also inconsistent log entry format)Multi-line entriesPopulating log after the action Let describe comon mistakes we can do with Camel and how these anti patterns can look in our case. Single log file As usual log file can be used by different people for diagnostic – eg. database administrators are not interested in all java stuff we do. Multi-line entries

MQTT: MQ Telemetry Transport JBoss Fuse - Overview JBoss Fuse is an open source, lightweight and modular integration platform with a new-style Enterprise Service Bus (ESB) that supports integration beyond the data center. The capability to connect all enterprise assets and the ability to deploy JBoss Fuse in several different configurations advances intelligent integration to all facets of your business – on premise or in the Cloud. JBoss Fuse for xPaaS extends the integration capabilities to OpenShift Platform-as-a-Service (PaaS) solution. Pattern based Integration framework Leverage Apache Camel to provide a full-featured, easy-to-use and intuitive framework for quicker integration solutions. Dynamic configuration and management Change configuration while container is running. Multiple connectivity options Connect to external applications with connectors for JDBC, FTP/SFTP, HTTP/HTTPS, file, SalesForce.com, SAP, Twitter, and more. Fabric Management Console is based on the hawtio web console. New Features Try the exciting new features: Buzz

Spring Writing large Files line by line with Apache Camel For a transformation with Smooks we had to parse the incoming EDI files line per line, to create a valid EDI source. For this we wrote a simple route like this: This route reads a file, splits it into line chuncks, each line will be parsed and finally the modified line will be added to a file in the destination folder. Really simple and it does what it was build for… But that approach is really slow. For each line we have a single write operation. Per line writes are really slow We have files with more that 5 million lines – so at a average of 170 to 200 messages per second we would need nearly 7 hours to parse one file! We added two lines. The result is stunning. line parsing with aggregation This is twenty times faster! And voilà.

OASIS Message Queuing Telemetry Transport (MQTT Providing a lightweight publish/subscribe reliable messaging transport protocol suitable for communication in M2M/IoT contexts where a small code footprint is required and/or network bandwidth is at a premium. Richard Coppen, coppen@uk.ibm.com, ChairRaphael Cohn, raphael.cohn@stormmq.com, ChairGeoff Brown, geoff.brown@m2mi.com, Secretary Table of Contents TC Update MQTT 3.1.1 becomes an OASIS Standard Read the OASIS announcement here. Announcements Track MQTT-related news with interoperate, a weekly curated newsletter covering IoT and M2M standards. The Eclipse Foundation Paho Project hosted an MQTT Interop Testing Day on 17 March 2014 in Burlingame, CA. Participation in the OASIS MQTT TC is open to all interested parties. Overview For more information on the MQTT TC, see the TC Charter. Subcommittees MQTT Security Subcommittee TC Liaisons No TC Liaisons have been announced for this TC. TC Tools and Approved Publications Technical Work Produced by the Committee MQTT Version 3.1.1 (Standards Track)

Service Design Patterns: Fundamental Design Solutions for SOAP/WSDL and ... - Robert Daigneau XFire Une première approche du Camel d’Apache | CarmaBlog English version available Raphaël Delaporte (@rafdelaporte) nous a proposé de dompter un chameau cette semaine au JUG Nantes. Et ne vous fiez pas à cette photo ! Apache Camel s’appuie et reprend les Entreprise Integration Patterns – EIP (à ne pas confondre avec les Design Patterns qui sont utilisés pour la conception objet). Les patterns EIP Voici les principaux patterns du plus simple au plus complexe (extrait de la présentation). Entreprise Integration Patterns En les combinant, les possibilités sont quasi-infinies. Un livre complet sur le sujet existe « Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions ». Faire des EIP avec Apache Camel Pour mettre en oeuvre les EIP, on trouve trois éléments de base dans Camel : RouteProcessorEndpoint (dans la littérature française, le terme est parfois traduit par « point d’extrémité ») Une route est conceptualisée de la manière suivante : la liaison de deux endpoints par un processor. Voici un exemple de route :

Reading configuration files with libconfig libconfig may be yet another configuration library, but I gave it a once- over anyway, and it is good. libconfig calls itself "a simple library for processing structured configuration files", with a "file format which is much more readable than XML". The file format really is readable, as the following short example shows: # authenticator name = "JP"; enabled = false; length = 186; ldap = { host = "ldap.example.com"; base = "ou=usr,o=example.com"; /* adapt this */ retries = [10, 15, 20, 60]; // Use more than 2 }; Comments within the configuration file can be placed anywhere, and libconfig knows three comment formats: a hash (#) as in the UNIX shells, the double slash (//) and the C-style /* ... */. libconfig knows about scalar values (integer, 64-bit integer, floating point, boolean and string), arrays of scalar values of the same type, so- called groups (collections of settings), and lists, which are sequences of values of any type, including lists. Somewhat related: Lua

Related: