Apache Kafka is an open-source stream processing platform developed by the Apache Software Foundation written in Scala and Java. The Kafka event streaming platform is used by thousands of companies for high-performance data pipelines, streaming analytics, data integration, and mission-critical applications.
N/A
Anypoint Platform
Score 7.8 out of 10
N/A
The Anypoint Platform developed by MuleSoft and acquired by Salesforce in early 2018 is designed to
connect apps, data, and devices anywhere, on-premises or in the cloud. This platform was built to
offer out-of-the-box connectors as well as tools that architects and developers can adopt quickly to
design, build and manage the entire lifecycle of their APIs, applications, and products.
N/A
Pricing
Apache Kafka
MuleSoft Anypoint Platform
Editions & Modules
No answers on this topic
No answers on this topic
Offerings
Pricing Offerings
Apache Kafka
Anypoint Platform
Free Trial
No
Yes
Free/Freemium Version
No
Yes
Premium Consulting/Integration Services
No
No
Entry-level Setup Fee
No setup fee
No setup fee
Additional Details
—
—
More Pricing Information
Community Pulse
Apache Kafka
MuleSoft Anypoint Platform
Features
Apache Kafka
MuleSoft Anypoint Platform
Cloud Data Integration
Comparison of Cloud Data Integration features of Product A and Product B
For brokering messages, Confluent Kafka is well suited since it offers a managed solution ready to use. Scenarios where the solution is not very well suited are for example, where pricing is an issue. The solution costs quite a lot for basic usage (for example: for 3 clusters, pricing is above 100k$ a year).
MuleSoft Anypoint Platform is best tool in the market for developing APIs with complex structures communicating with various different types of applications including web applications as well as legacy applications. Also applications including database connectivity for fetching and updating data in the DB tables. I cant think of any scenario which MuleSoft Anypoint Platform could not be used for developing the integrations.
Apache Kafka is able to handle a large number of I/Os (writes) using 3-4 cheap servers.
It scales very well over large workloads and can handle extreme-scale deployments (eg. Linkedin with 300 billion user events each day).
The same Kafka setup can be used as a messaging bus, storage system or a log aggregator making it easy to maintain as one system feeding multiple applications.
Provides wide range of popular connectors like salesforce, netsuite, sftp and many more. A user can easily integrate with those services using specific connector.
Support API development using RAML and desing tool. The platform is very good in data type classification.
Cloud deployment and post deployment monitoring is easy. A user can configure application worker as per need. Alert and notifications are real time.
The Kafka Tool is a community-made Java application that looks and feels from the past century.
Logging can be confusing. This certainly shows when we have to do troubleshooting.
Hybrid scenarios - pub/sub, but there are services in and outside a Kubernetes cluster. Then there are a ~3 options, but only 2 (the harder ones) are production-safe.
Has more features than what we really need so we're paying for more than we use. Sort of like paying for an Abrams tank when all we really need is a Toyota Corolla.
Not a value product, tends to be expensive.
Takes a while for developers to learn to use Mulesoft Anypoint.
Kafka has suited our use case very well so far. Going forward we are planning to expand our platform manifold so the load on Kafka and our reliance on Kafka is going to increase only.
Apache Kafka is highly recommended to develop loosely coupled, real-time processing applications. Also, Apache Kafka provides property based configuration. Producer, Consumer and broker contain their own separate property file
MuleSoft Anypoint Platform is really very easy to adopt for application integration. Simple UI and easy data weave language allows user to focus on business portion only. The API management and deployment of application are hassle free.
Support for Apache Kafka (if willing to pay) is available from Confluent that includes the same time that created Kafka at Linkedin so they know this software in and out. Moreover, Apache Kafka is well known and best practices documents and deployment scenarios are easily available for download. For example, from eBay, Linkedin, Uber, and NYTimes.
Anypoint Platform support is very responsive. There is also a huge knowledge base and an active online forum where answers to most questions can be found. When needed support engages the engineering group so adequate solutions or workarounds are always provided.
Apache Kafka is built for scale. From high throughput and real-time data streaming, it has a strong advantage over RabbitMQ with its low latency. This put Apache Kafka at the forefront as the platform of choice for large datasets messaging and ensuring scalability when data scale up tremendously. RabbitMQ however has its strengths in traditional messaging. Routing and message delivery reliability are the bedrock of RabbitMQ and this is where RabbitMQ excels. In my previous workplace, RabbitMQ was of choice as reliability matters more than scale. In two words. Apache Kafka for scale, RabbitMQ for reliability. And for cloud deployment and large dataset messaging in what I am doing now, Apache Kafka is the default choice.
Once we have moved all of our system integration APIs to the MuleSoft Anypoint Platform, we will need to communicate with a wide variety of external systems. All of our business and service logic is stored in the aforementioned core systems. Anypoint Platform (and all of our APIs) makes it easy to connect to various other platforms. In order to link to these many other systems, connectors and/or components are utilized, and they are simple to configure and integrate.
Positive: bursts of traffic on special holidays are easy to handle because Kafka can absorb and buffer all the messages we need to process long enough to let an understaffed set of back-end services catch up on processing. Hard to put a number to it but we probably save $5k a month having fewer machines running.
Positive: makes decoupling the web and API services from the deeper back-end services easier by providing topics as an interface. This allowed us to split up our teams and have them develop independently of each other, speeding up software development.
Negative: our engineers have made mistakes such as accidentally dropping a few thousand messages due to the CLI being confusing to use, and as a result a customer lost some of their precious data. I'd say that was more our fault than Kafka's though.