TrustRadius
Apache Camel is an open source integration platform.https://dudodiprj2sv7.cloudfront.net/product-logos/KS/2f/ILJTFO8T1F9V.jpegbest lightweight integration solutionWhen we switched from a monolithic architecture to a service oriented one we were researching on all the enterprise integration technologies. We chose Apache Camel because it was lightweight, was easy to get started with, had a groovy DSL and because it was an implementation of existing integration patterns. Over the last few years, Apache Camel became the glue that binds all our micro services. We use publish-subscribe pattern the most i.e consuming from and producing to AWS SQS queues. A lot of our quartz jobs are heavily depended on Apache Camel as well. I would highly recommend Apache Camel as a lightweight yet formidable enterprise integration solution.,Producing to and consuming from any messaging system Message type conversion Large support library,Documentation could use some more detail Hot deployment,9,When we were looking to move to a service oriented architecture, Apache Camel got us started quickly. It continues to be the backbone of our integration.,,Springs.io, Amazon CloudSearch, Amazon S3 (Simple Storage Service)Camel is awesome!I've used Apache Camel as a great alternative integration framework compared to heavier middleware solutions from companies like IBM. It serves that purpose wonderfully, and is a total pleasure to use. Great plugins for almost any connector you could need, and they all work as expected.,Open source, which is vitally important Great integration with Java frameworks such as Spring Boot, allowing it to be deployed however you need to deploy it Wonderful testing tools as part of the framework,Documentation could use some work, sometimes it takes a bit of trial and error to figure out how to do something.,10,Easier development time and less infrastructure cost than similar proprietary middleware.,Apache Camel ReviewApache Camel is being used for multiple projects in different organizations that I have worked at. It is being leveraged for EIP as well as writing event based code. I worked for an organization that used Camel with Karaf (OSGi) and other organizations where Camel was used just as an open source framework.,EIP - enterprise integration patterns. Read events from queue, route to different processes and work on the messages. REST APIs- Apache CXF is used and Camel could be used to provide endpoints. Batches - Camel could be used to trigger batches and do large scale processing, using its throttling. It provides lots of connectors to work with.,I feel that Apache Camel is lacking a Spring XD like framework integration with big data capabilities. Apache Camel seems to be very dependent on Spring.,9,Apache Camel is open source and Java based. So if your engineering team is strong in Java this could be a good framework to adopt. Apache camel is open source. Camel could be run on OSGi containers like Karaf or Fuse.,,Apache Maven, Red Hat JBoss BRMS, Apache TomcatEIP using CamelWe use it as the processing backbone/Enterprise Integration Pattern (EIP) framework for several products that we develop. It is used to provide components for message ingest, orchestration and export. By orchestration, I mean the determination and execution of the path of any single message through the application. It also is our primary error handling mechanism as it provides out-of-the-box error retry, waiting and exponential backoff.,The Java DSP is one of the primary reasons we chose Camel over Spring Integration's XML-based route definitions. It provides compile-time checking of syntax with auto-complete in an IDE (Eclipse, etc). The component documentation on the website is phenomenal. Error handling mechanisms are robust and easy to use and set up. Default settings are great and intuitive. The ability to define distinct contexts within the same application and define context-wide, context-specific error handling is great as well.,I find the "seda" endpoint to be less obvious that it is doing multi-threading than Spring Integration's executor mechanism. Integration with Spring Beans is pretty good, but I believe SI's is a bit better (for obvious reasons, both being Spring products). SI's use support is probably a bit better/faster and I believe the user base is larger so that there are most questions/answers for SI on StackOverflow,8,Very fast time to market in that so many components are available to use immediately. Error handling mechanisms and patterns of practice are robust and easy to use which in turn has made our application more robust from the start, so fewer bugs. However, testing and debugging routes is more challenging than working is standard Java so that takes more time (less time than writing the components from scratch). Most people don't know Camel coming in and many junior developers find it overwhelming and are not enthusiastic to learn it. So finding people that want to develop/maintain it is a challenge.,Spring IntegrationBetter on a CamelApache Camel is used by many departments at Cox Communications, but not the entire organization. It enables quick and scaleable integration of diverse business systems at Cox and reduces development effort and resources. Various Camel components are used and there is even a customized version of Camel Http4 component. Also Camel fits well in the existing infrastructure at Cox.,Camel has an easy learning curve. It is fairly well documented and there are about 5-6 books on Camel. There is a large user group and blogs devoted to all things Camel and the developers of Camel provide quick answers and have also been very quick to patch Camel, when bugs are reported. Camel integrates well with well known frameworks like Spring, and other middleware products like Apache Karaf and Servicemix. There are over 150 components for the Camel framework that help integrate with diverse software platforms. Camel is also good for creating microservices.,Camel features and documentation can get confusing to new users. Documentation can and should be improved. Also it would help if there are more tutorials available. Certification in Camel and related technologies like Servicemix and Karaf would also help. The Camel infrastructure probably needs to be rebuilt (hopefully this may happen with version 3.0). At this time the latest production release of Camel (2.17.x) is not built with the latest version of Java (JDK 1.8). Camel should also move towards becoming a "heavyweight" ESB product, though this may detract from some of its desirable features.,9,This is hard to guage, but definitely the effort and resources required to develop and deploy new applications has gone down considerably. Approximately 50-70% lesser resources compared to the traditional way of developing applications. Code complexity and maintenance costs have gone down, again over 50%. Unit testing has cut down on bugs in production. There are far fewer bugs than would have been the case with plain Java. Approximately 70% less bugs discovered. Camel is a free, open source product. It is free as opposed to similar proprietary products like Tibco Business Works.,,Talend Open Studio, Elasticsearch, Splunk, Apigee
Unspecified
Apache Camel
24 Ratings
Score 7.4 out of 101
<a href='https://www.trustradius.com/static/about-trustradius-scoring' target='_blank' rel='nofollow'>trScore algorithm: Learn more.</a>TRScore

Apache Camel Reviews

Apache Camel
24 Ratings
<a href='https://www.trustradius.com/static/about-trustradius-scoring' target='_blank' rel='nofollow'>trScore algorithm: Learn more.</a>
Score 7.4 out of 101
Show Filters 
Hide Filters 
Filter 24 vetted Apache Camel reviews and ratings
Clear all filters
Overall Rating
Reviewer's Company Size
Last Updated
By Topic
Industry
Department
Experience
Job Type
Role
Reviews (1-7 of 7)
  Vendors can't alter or remove reviews. Here's why.
Akmal Muqeeth profile photo
March 28, 2017

Apache Camel Review: "best lightweight integration solution"

Score 9 out of 10
Vetted Review
Verified User
Review Source
When we switched from a monolithic architecture to a service oriented one we were researching on all the enterprise integration technologies. We chose Apache Camel because it was lightweight, was easy to get started with, had a groovy DSL and because it was an implementation of existing integration patterns. Over the last few years, Apache Camel became the glue that binds all our micro services. We use publish-subscribe pattern the most i.e consuming from and producing to AWS SQS queues. A lot of our quartz jobs are heavily depended on Apache Camel as well. I would highly recommend Apache Camel as a lightweight yet formidable enterprise integration solution.
  • Producing to and consuming from any messaging system
  • Message type conversion
  • Large support library
  • Documentation could use some more detail
  • Hot deployment
For basic publish subscribe use cases, Apache Camel is the clear winner.
Read Akmal Muqeeth's full review
No photo available
April 13, 2017

Apache Camel Review: "Camel is awesome!"

Score 10 out of 10
Vetted Review
Verified User
Review Source
I've used Apache Camel as a great alternative integration framework compared to heavier middleware solutions from companies like IBM. It serves that purpose wonderfully, and is a total pleasure to use. Great plugins for almost any connector you could need, and they all work as expected.
  • Open source, which is vitally important
  • Great integration with Java frameworks such as Spring Boot, allowing it to be deployed however you need to deploy it
  • Wonderful testing tools as part of the framework
  • Documentation could use some work, sometimes it takes a bit of trial and error to figure out how to do something.
Message brokering across different systems, with transactionality and the ability to have fine tuned control over what happens using Java (or other languages), instead of a heavy, proprietary languages.

One situation that it doesn't fit very well (as far as I have experienced) is when your workflow requires significant data mapping. While possible when using Java tooling, some other visual data mapping tools in other integration frameworks are easier to work with.
Read this authenticated review
No photo available
April 10, 2017

"Apache Camel Review"

Score 9 out of 10
Vetted Review
Verified User
Review Source
Apache Camel is being used for multiple projects in different organizations that I have worked at. It is being leveraged for EIP as well as writing event based code.

I worked for an organization that used Camel with Karaf (OSGi) and other organizations where Camel was used just as an open source framework.
  • EIP - enterprise integration patterns. Read events from queue, route to different processes and work on the messages.
  • REST APIs- Apache CXF is used and Camel could be used to provide endpoints.
  • Batches - Camel could be used to trigger batches and do large scale processing, using its throttling. It provides lots of connectors to work with.
  • I feel that Apache Camel is lacking a Spring XD like framework integration with big data capabilities.
  • Apache Camel seems to be very dependent on Spring.
Camel is very suited where ever you want to use enterprise integration patterns like endpoint integration, routers, aggregators, splitters etc. Also Camel can be used for REST endpoints, designing event driven systems and integration with queues and it provides whole lot of connectors for integration with social etc.
Read this authenticated review
No photo available
April 03, 2017

Apache Camel Review: "EIP using Camel"

Score 8 out of 10
Vetted Review
Verified User
Review Source
We use it as the processing backbone/Enterprise Integration Pattern (EIP) framework for several products that we develop. It is used to provide components for message ingest, orchestration and export. By orchestration, I mean the determination and execution of the path of any single message through the application. It also is our primary error handling mechanism as it provides out-of-the-box error retry, waiting and exponential backoff.
  • The Java DSP is one of the primary reasons we chose Camel over Spring Integration's XML-based route definitions. It provides compile-time checking of syntax with auto-complete in an IDE (Eclipse, etc).
  • The component documentation on the website is phenomenal.
  • Error handling mechanisms are robust and easy to use and set up. Default settings are great and intuitive.
  • The ability to define distinct contexts within the same application and define context-wide, context-specific error handling is great as well.
  • I find the "seda" endpoint to be less obvious that it is doing multi-threading than Spring Integration's executor mechanism.
  • Integration with Spring Beans is pretty good, but I believe SI's is a bit better (for obvious reasons, both being Spring products).
  • SI's use support is probably a bit better/faster and I believe the user base is larger so that there are most questions/answers for SI on StackOverflow
Message processing, especially with high throughput, is an excellent use case. File system monitoring, JMS ingest, etc., is really great. I would most consider it for automated processing scenarios. Although it provides components to support REST endpoints, I would choose frameworks such as Jersey or Spring REST for that. Although it supports a response mechanism, I don't think I would choose to use it in systems where I need fine-tuned control of responses.
Read this authenticated review
Surjit Sen profile photo
July 15, 2016

Apache Camel Review: "Better on a Camel"

Score 9 out of 10
Vetted Review
Verified User
Review Source
Apache Camel is used by many departments at Cox Communications, but not the entire organization. It enables quick and scaleable integration of diverse business systems at Cox and reduces development effort and resources. Various Camel components are used and there is even a customized version of Camel Http4 component. Also Camel fits well in the existing infrastructure at Cox.
  • Camel has an easy learning curve. It is fairly well documented and there are about 5-6 books on Camel.
  • There is a large user group and blogs devoted to all things Camel and the developers of Camel provide quick answers and have also been very quick to patch Camel, when bugs are reported.
  • Camel integrates well with well known frameworks like Spring, and other middleware products like Apache Karaf and Servicemix.
  • There are over 150 components for the Camel framework that help integrate with diverse software platforms.
  • Camel is also good for creating microservices.
  • Camel features and documentation can get confusing to new users. Documentation can and should be improved. Also it would help if there are more tutorials available. Certification in Camel and related technologies like Servicemix and Karaf would also help.
  • The Camel infrastructure probably needs to be rebuilt (hopefully this may happen with version 3.0). At this time the latest production release of Camel (2.17.x) is not built with the latest version of Java (JDK 1.8).
  • Camel should also move towards becoming a "heavyweight" ESB product, though this may detract from some of its desirable features.
Apache Camel is well suited for integration of existing software programs/components with newer and external systems. It supports SOAP and REST protocols pretty well. It was not designed to directly support front end systems. It has limited to non-existent support for Javascript. It is not suitable for creating simple standalone applications and meaningful deployment does require use of other frameworks like Spring/Karaf/JBoss.
Read Surjit Sen's full review
David McCann profile photo
July 12, 2016

Review: "Apache Camel: ways you're wasting developer time if you aren't using it"

Score 10 out of 10
Vetted Review
Verified User
Review Source
I worked on a product development team creating an enterprise cybersecurity product. The core event processing mechanism of the product used Apache Camel in many places, mainly to handle interactions over JMS between the various modules of the product. Apache Camel especially makes the process of sending a POJO from one method to another across two separate application components, handling the marshaling and unmarshaling via JAXB, and the sending and receiving via JMS. It achieves all this routing via a simple XML configuration that is part of the application's spring context (although it can also be configured procedurally).
  • Configuration of information routing via XML in a Sprint Context.
  • Robustness. Apache Camel is capable of handling many different information transfer protocols out-of-the-box.
  • Extensibility. Apache Camel also allows for custom routing handlers where needed.
  • Some of the documentation is a little sparse. In particular, its TCP-based routes use an underlying Netty server, and the interactions between Netty's decoder capabilities and Apache Camel's routing/handler capabilities can be a little muddy at times. In general it is clear which routes and endpoints are the more frequently used and which haven't been given as much attention.
In my experience, Apache Camel was very useful for the main use case that we leveraged it for, i.e. wiring up JMS messaging. I found the less-frequently-used handlers and endpoints to be either less reliable, maintainable, or easy to work with than just rolling my own data transfer logic. I would stick to straightforward use cases where the XML configuration conveys the intent in a very clear manner, and avoid using Apache Camel to do large portions of moving data around that involve business logic or custom intermediaries.
Read David McCann's full review
No photo available
July 12, 2016

"Apache camel review"

Score 9 out of 10
Vetted Review
Verified User
Review Source
I used it when I worked at Verizon Wireless. We used apache Camel on a couple projects as an integration layer between the UI and backend services and databases. We used Apache Camel's REST component. We used it as xml and java dsl [solution].
  • It uses URIs to directly integrate with various back-end components.
  • It has a very easy to use REST component.
  • Easy to track the execution flow while coding by using routers.
  • Helps keep different components separate.
  • To be able to hot deploy
If you want to integrate several applications with different protocols and technologies you should use Apache Camel. The good thing about it is that you have to follow same steps for every integration. If you want to have a container you need to use something else.
Read this authenticated review

Apache Camel Scorecard Summary

About Apache Camel

Apache Camel is an open source integration platform.

Apache Camel Technical Details

Operating Systems: Unspecified
Mobile Application:No