Alternatives to Apache Camel logo

Alternatives to Apache Camel

Kafka, ActiveMQ, Apache NiFi, Spring Batch, and RabbitMQ are the most popular alternatives and competitors to Apache Camel.
1.3K
254
+ 1
21

What is Apache Camel and what are its top alternatives?

An open source Java framework that focuses on making integration easier and more accessible to developers.
Apache Camel is a tool in the Platform as a Service category of a tech stack.
Apache Camel is an open source tool with 4.3K GitHub stars and 4.5K GitHub forks. Here’s a link to Apache Camel's open source repository on GitHub

Top Alternatives to Apache Camel

  • Kafka
    Kafka

    Kafka is a distributed, partitioned, replicated commit log service. It provides the functionality of a messaging system, but with a unique design. ...

  • ActiveMQ
    ActiveMQ

    Apache ActiveMQ is fast, supports many Cross Language Clients and Protocols, comes with easy to use Enterprise Integration Patterns and many advanced features while fully supporting JMS 1.1 and J2EE 1.4. Apache ActiveMQ is released under the Apache 2.0 License. ...

  • Apache NiFi
    Apache NiFi

    An easy to use, powerful, and reliable system to process and distribute data. It supports powerful and scalable directed graphs of data routing, transformation, and system mediation logic. ...

  • Spring Batch
    Spring Batch

    It is designed to enable the development of robust batch applications vital for the daily operations of enterprise systems. It also provides reusable functions that are essential in processing large volumes of records, including logging/tracing, transaction management, job processing statistics, job restart, skip, and resource management. ...

  • RabbitMQ
    RabbitMQ

    RabbitMQ gives your applications a common platform to send and receive messages, and your messages a safe place to live until received. ...

  • Talend
    Talend

    It is an open source software integration platform helps you in effortlessly turning data into business insights. It uses native code generation that lets you run your data pipelines seamlessly across all cloud providers and get optimized performance on all platforms. ...

  • Airflow
    Airflow

    Use Airflow to author workflows as directed acyclic graphs (DAGs) of tasks. The Airflow scheduler executes your tasks on an array of workers while following the specified dependencies. Rich command lines utilities makes performing complex surgeries on DAGs a snap. The rich user interface makes it easy to visualize pipelines running in production, monitor progress and troubleshoot issues when needed. ...

  • Fuse
    Fuse

    It is a set of user experience development tools that unify design, prototyping and implementation of high quality, native apps for iOS and Android. ...

Apache Camel alternatives & related posts

Kafka logo

Kafka

17.8K
16.9K
587
Distributed, fault tolerant, high throughput pub-sub messaging system
17.8K
16.9K
+ 1
587
PROS OF KAFKA
  • 125
    High-throughput
  • 118
    Distributed
  • 88
    Scalable
  • 82
    High-Performance
  • 65
    Durable
  • 37
    Publish-Subscribe
  • 19
    Simple-to-use
  • 16
    Open source
  • 11
    Written in Scala and java. Runs on JVM
  • 7
    Message broker + Streaming system
  • 4
    Avro schema integration
  • 4
    KSQL
  • 3
    Robust
  • 2
    Suport Multiple clients
  • 2
    Partioned, replayable log
  • 1
    Flexible
  • 1
    Extremely good parallelism constructs
  • 1
    Simple publisher / multi-subscriber model
  • 1
    Fun
CONS OF KAFKA
  • 29
    Non-Java clients are second-class citizens
  • 27
    Needs Zookeeper
  • 7
    Operational difficulties
  • 2
    Terrible Packaging

related Kafka posts

Eric Colson
Chief Algorithms Officer at Stitch Fix · | 21 upvotes · 2.3M views

The algorithms and data infrastructure at Stitch Fix is housed in #AWS. Data acquisition is split between events flowing through Kafka, and periodic snapshots of PostgreSQL DBs. We store data in an Amazon S3 based data warehouse. Apache Spark on Yarn is our tool of choice for data movement and #ETL. Because our storage layer (s3) is decoupled from our processing layer, we are able to scale our compute environment very elastically. We have several semi-permanent, autoscaling Yarn clusters running to serve our data processing needs. While the bulk of our compute infrastructure is dedicated to algorithmic processing, we also implemented Presto for adhoc queries and dashboards.

Beyond data movement and ETL, most #ML centric jobs (e.g. model training and execution) run in a similarly elastic environment as containers running Python and R code on Amazon EC2 Container Service clusters. The execution of batch jobs on top of ECS is managed by Flotilla, a service we built in house and open sourced (see https://github.com/stitchfix/flotilla-os).

At Stitch Fix, algorithmic integrations are pervasive across the business. We have dozens of data products actively integrated systems. That requires serving layer that is robust, agile, flexible, and allows for self-service. Models produced on Flotilla are packaged for deployment in production using Khan, another framework we've developed internally. Khan provides our data scientists the ability to quickly productionize those models they've developed with open source frameworks in Python 3 (e.g. PyTorch, sklearn), by automatically packaging them as Docker containers and deploying to Amazon ECS. This provides our data scientist a one-click method of getting from their algorithms to production. We then integrate those deployments into a service mesh, which allows us to A/B test various implementations in our product.

For more info:

#DataScience #DataStack #Data

See more
John Kodumal

As we've evolved or added additional infrastructure to our stack, we've biased towards managed services. Most new backing stores are Amazon RDS instances now. We do use self-managed PostgreSQL with TimescaleDB for time-series data—this is made HA with the use of Patroni and Consul.

We also use managed Amazon ElastiCache instances instead of spinning up Amazon EC2 instances to run Redis workloads, as well as shifting to Amazon Kinesis instead of Kafka.

See more
ActiveMQ logo

ActiveMQ

513
1.1K
76
A message broker written in Java together with a full JMS client
513
1.1K
+ 1
76
PROS OF ACTIVEMQ
  • 18
    Easy to use
  • 14
    Open source
  • 13
    Efficient
  • 10
    JMS compliant
  • 6
    High Availability
  • 5
    Scalable
  • 3
    Support XA (distributed transactions)
  • 3
    Persistence
  • 2
    Distributed Network of brokers
  • 1
    Highly configurable
  • 1
    Docker delievery
  • 0
    RabbitMQ
CONS OF ACTIVEMQ
  • 1
    Support
  • 1
    Low resilience to exceptions and interruptions
  • 1
    Difficult to scale

related ActiveMQ posts

I want to choose Message Queue with the following features - Highly Available, Distributed, Scalable, Monitoring. I have RabbitMQ, ActiveMQ, Kafka and Apache RocketMQ in mind. But I am confused which one to choose.

See more
Naushad Warsi
software developer at klingelnberg · | 1 upvote · 649K views
Shared insights
on
ActiveMQActiveMQRabbitMQRabbitMQ

I use ActiveMQ because RabbitMQ have stopped giving the support for AMQP 1.0 or above version and the earlier version of AMQP doesn't give the functionality to support OAuth.

If OAuth is not required and we can go with AMQP 0.9 then i still recommend rabbitMq.

See more
Apache NiFi logo

Apache NiFi

288
576
62
A reliable system to process and distribute data
288
576
+ 1
62
PROS OF APACHE NIFI
  • 15
    Visual Data Flows using Directed Acyclic Graphs (DAGs)
  • 8
    Free (Open Source)
  • 7
    Simple-to-use
  • 5
    Reactive with back-pressure
  • 5
    Scalable horizontally as well as vertically
  • 4
    Fast prototyping
  • 3
    Bi-directional channels
  • 2
    Data provenance
  • 2
    Built-in graphical user interface
  • 2
    End-to-end security between all nodes
  • 2
    Can handle messages up to gigabytes in size
  • 1
    Hbase support
  • 1
    Kudu support
  • 1
    Hive support
  • 1
    Slack integration
  • 1
    Support for custom Processor in Java
  • 1
    Lot of articles
  • 1
    Lots of documentation
CONS OF APACHE NIFI
  • 2
    HA support is not full fledge
  • 2
    Memory-intensive

related Apache NiFi posts

I am looking for the best tool to orchestrate #ETL workflows in non-Hadoop environments, mainly for regression testing use cases. Would Airflow or Apache NiFi be a good fit for this purpose?

For example, I want to run an Informatica ETL job and then run an SQL task as a dependency, followed by another task from Jira. What tool is best suited to set up such a pipeline?

See more
Spring Batch logo

Spring Batch

156
198
0
A lightweight, comprehensive batch framework
156
198
+ 1
0
PROS OF SPRING BATCH
  • 0
    Dd
CONS OF SPRING BATCH
    Be the first to leave a con

    related Spring Batch posts

    RabbitMQ logo

    RabbitMQ

    16.5K
    14.5K
    520
    Open source multiprotocol messaging broker
    16.5K
    14.5K
    + 1
    520
    PROS OF RABBITMQ
    • 232
      It's fast and it works with good metrics/monitoring
    • 79
      Ease of configuration
    • 58
      I like the admin interface
    • 50
      Easy to set-up and start with
    • 20
      Durable
    • 18
      Intuitive work through python
    • 18
      Standard protocols
    • 10
      Written primarily in Erlang
    • 8
      Simply superb
    • 6
      Completeness of messaging patterns
    • 3
      Scales to 1 million messages per second
    • 3
      Reliable
    • 2
      Better than most traditional queue based message broker
    • 2
      Distributed
    • 2
      Supports AMQP
    • 1
      Inubit Integration
    • 1
      Delayed messages
    • 1
      Supports MQTT
    • 1
      Runs on Open Telecom Platform
    • 1
      High performance
    • 1
      Reliability
    • 1
      Clusterable
    • 1
      Clear documentation with different scripting language
    • 1
      Great ui
    • 1
      Better routing system
    CONS OF RABBITMQ
    • 9
      Too complicated cluster/HA config and management
    • 6
      Needs Erlang runtime. Need ops good with Erlang runtime
    • 5
      Configuration must be done first, not by your code
    • 4
      Slow

    related RabbitMQ posts

    James Cunningham
    Operations Engineer at Sentry · | 18 upvotes · 1.4M views
    Shared insights
    on
    CeleryCeleryRabbitMQRabbitMQ
    at

    As Sentry runs throughout the day, there are about 50 different offline tasks that we execute—anything from “process this event, pretty please” to “send all of these cool people some emails.” There are some that we execute once a day and some that execute thousands per second.

    Managing this variety requires a reliably high-throughput message-passing technology. We use Celery's RabbitMQ implementation, and we stumbled upon a great feature called Federation that allows us to partition our task queue across any number of RabbitMQ servers and gives us the confidence that, if any single server gets backlogged, others will pitch in and distribute some of the backlogged tasks to their consumers.

    #MessageQueue

    See more
    Yogesh Bhondekar
    Co-Founder at weconnect.chat · | 15 upvotes · 171.2K views

    Hi, I am building an enhanced web-conferencing app that will have a voice/video call, live chats, live notifications, live discussions, screen sharing, etc features. Ref: Zoom.

    I need advise finalizing the tech stack for this app. I am considering below tech stack:

    • Frontend: React
    • Backend: Node.js
    • Database: MongoDB
    • IAAS: #AWS
    • Containers & Orchestration: Docker / Kubernetes
    • DevOps: GitLab, Terraform
    • Brokers: Redis / RabbitMQ

    I need advice at the platform level as to what could be considered to support concurrent video streaming seamlessly.

    Also, please suggest what could be a better tech stack for my app?

    #SAAS #VideoConferencing #WebAndVideoConferencing #zoom #stack

    See more
    Talend logo

    Talend

    129
    205
    0
    A single, unified suite for all integration needs
    129
    205
    + 1
    0
    PROS OF TALEND
      Be the first to leave a pro
      CONS OF TALEND
        Be the first to leave a con

        related Talend posts

        Airflow logo

        Airflow

        1.4K
        2.3K
        123
        A platform to programmaticaly author, schedule and monitor data pipelines, by Airbnb
        1.4K
        2.3K
        + 1
        123
        PROS OF AIRFLOW
        • 49
          Features
        • 14
          Task Dependency Management
        • 12
          Beautiful UI
        • 12
          Cluster of workers
        • 10
          Extensibility
        • 5
          Open source
        • 5
          Python
        • 4
          Complex workflows
        • 3
          K
        • 3
          Good api
        • 2
          Custom operators
        • 2
          Apache project
        • 2
          Dashboard
        CONS OF AIRFLOW
        • 2
          Running it on kubernetes cluster relatively complex
        • 2
          Open source - provides minimum or no support
        • 1
          Logical separation of DAGs is not straight forward
        • 1
          Observability is not great when the DAGs exceed 250

        related Airflow posts

        Shared insights
        on
        JenkinsJenkinsAirflowAirflow

        I am looking for an open-source scheduler tool with cross-functional application dependencies. Some of the tasks I am looking to schedule are as follows:

        1. Trigger Matillion ETL loads
        2. Trigger Attunity Replication tasks that have downstream ETL loads
        3. Trigger Golden gate Replication Tasks
        4. Shell scripts, wrappers, file watchers
        5. Event-driven schedules

        I have used Airflow in the past, and I know we need to create DAGs for each pipeline. I am not familiar with Jenkins, but I know it works with configuration without much underlying code. I want to evaluate both and appreciate any advise

        See more
        Shared insights
        on
        AWS Step FunctionsAWS Step FunctionsAirflowAirflow

        I am working on a project that grabs a set of input data from AWS S3, pre-processes and divvies it up, spins up 10K batch containers to process the divvied data in parallel on AWS Batch, post-aggregates the data, and pushes it to S3.

        I already have software patterns from other projects for Airflow + Batch but have not dealt with the scaling factors of 10k parallel tasks. Airflow is nice since I can look at which tasks failed and retry a task after debugging. But dealing with that many tasks on one Airflow EC2 instance seems like a barrier. Another option would be to have one task that kicks off the 10k containers and monitors it from there.

        I have no experience with AWS Step Functions but have heard it's AWS's Airflow. There looks to be plenty of patterns online for Step Functions + Batch. Do Step Functions seem like a good path to check out for my use case? Do you get the same insights on failing jobs / ability to retry tasks as you do with Airflow?

        See more
        Fuse logo

        Fuse

        46
        49
        0
        Mobile interfaces for your IT systems
        46
        49
        + 1
        0
        PROS OF FUSE
          Be the first to leave a pro
          CONS OF FUSE
            Be the first to leave a con

            related Fuse posts