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
Bonita Platform
Score 4.0 out of 10
N/A
Bonita is an open-source business process and workflow management platform created by the French National Institute for Research in Computer Science. It is available as a free community edition or as a commercial subscription product.
N/A
Pricing
Apache Kafka
Bonita Platform
Editions & Modules
No answers on this topic
No answers on this topic
Offerings
Pricing Offerings
Apache Kafka
Bonita Platform
Free Trial
No
No
Free/Freemium Version
No
Yes
Premium Consulting/Integration Services
No
Yes
Entry-level Setup Fee
No setup fee
No setup fee
Additional Details
—
—
More Pricing Information
Community Pulse
Apache Kafka
Bonita Platform
Features
Apache Kafka
Bonita Platform
Reporting & Analytics
Comparison of Reporting & Analytics features of Product A and Product B
Apache Kafka
-
Ratings
Bonita Platform
6.4
43 Ratings
20% below category average
Dashboards
00 Ratings
6.041 Ratings
Standard reports
00 Ratings
5.540 Ratings
Custom reports
00 Ratings
7.740 Ratings
Process Engine
Comparison of Process Engine features of Product A and Product B
Apache Kafka
-
Ratings
Bonita Platform
7.7
53 Ratings
8% below category average
Process designer
00 Ratings
9.052 Ratings
Process simulation
00 Ratings
6.910 Ratings
Business rules engine
00 Ratings
8.242 Ratings
SOA support
00 Ratings
6.440 Ratings
Process player
00 Ratings
6.78 Ratings
Support for modeling languages
00 Ratings
9.038 Ratings
Form builder
00 Ratings
8.148 Ratings
Model execution
00 Ratings
6.948 Ratings
Collaboration
Comparison of Collaboration features of Product A and Product B
Apache Kafka
-
Ratings
Bonita Platform
5.9
24 Ratings
34% below category average
Social collaboration tools
00 Ratings
5.924 Ratings
Content Management Capabilties
Comparison of Content Management Capabilties features of Product A and Product B
Apache Kafka is well-suited for most data-streaming use cases. Amazon Kinesis and Azure EventHubs, unless you have a specific use case where using those cloud PaAS for your data lakes, once set up well, Apache Kafka will take care of everything else in the background. Azure EventHubs, is good for cross-cloud use cases, and Amazon Kinesis - I have no real-world experience. But I believe it is the same.
Well suited for low code/no code applications centered around approval flows. It has built-in task management for users to see their pending actions, comments, statuses, etc. It has a very nice design for process flows. Less appropriate may be for generic type applications with complex screens and logic within those screens that need a lot of data to process.
Really easy to configure. I've used other message brokers such as RabbitMQ and compared to them, Kafka's configurations are very easy to understand and tweak.
Very scalable: easily configured to run on multiple nodes allowing for ease of parallelism (assuming your queues/topics don't have to be consumed in the exact same order the messages were delivered)
Not exactly a feature, but I trust Kafka will be around for at least another decade because active development has continued to be strong and there's a lot of financial backing from Confluent and LinkedIn, and probably many other companies who are using it (which, anecdotally, is many).
Bonita seems particularly suited for processes requiring a great deal of human interaction. Its user model allows you to control access to business processes in a fine-grained way. This allows for business processes to move smoothly between users and services as the process advances.
The definition and usage of custom forms from the latest version of Bonita seems particularly powerful. It allows for a thorough customization of the look-and-feel and does not require complex developments.
The web interface and administration section have greatly improved in the latest versions. Installation and configuration of processes has become more flexible and more structured. The administration section gives a good view on failed processes, allowing to analyse problems in an efficient way.
Sometimes it becomes difficult to monitor our Kafka deployments. We've been able to overcome it largely using AWS MSK, a managed service for Apache Kafka, but a separate monitoring dashboard would have been great.
Simplify the process for local deployment of Kafka and provide a user interface to get visibility into the different topics and the messages being processed.
Learning curve around creation of broker and topics could be simplified
There is a learning curve beyond the boot camps that needs to be addressed with more structured curriculum.
The full stack technologies are industry standard, but these [are] challenging to learn and could use a learning path and orientation. There's probably opportunity for third-parties here to help with learning and adoption.
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
Bonita Platform has allowed us to develop GUI relatively fast using its UI Designer while being able to seamlessly integrate our business logic in Java in a BPMN2 process diagram. It gives a nice productivity boost but still requires programming know-how to be able to deliver the final solution to your business problems.
Engine itself is efficient enough for most cases I dealt with. It can also be extended by clustering. I have done performance tests with JMeter and only managed to induce the crash of... JMeter. If there are efficiency issues they usually concern bad design/implementation of created apps or bottlenecks in integrated systems. Although I have met two cases with efficiency loss.
1. Java 7 related PermGen saturation caused by big number of installed apps (there is no jar dependency reusal between apps option).
2. Big number of waiting event handlers in processes stresses the database.
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.
I used other messaging/queue solutions that are a lot more basic than Confluent Kafka, as well as another solution that is no longer in the market called Xively, which was bought and "buried" by Google. In comparison, these solutions offer way fewer functionalities and respond to other needs.
Respect of BPMN standard over the long term. Good enhancements by Bonitasoft for new use cases, for example the introduction of a real form editor even if it has been technically difficult to manage. Once done though, we have far greater possibility of human interaction.
Positive: Get a quick and reliable pub/sub model implemented - data across components flows easily.
Positive: it's scalable so we can develop small and scale for real-world scenarios
Negative: it's easy to get into a confusing situation if you are not experienced yet or something strange has happened (rare, but it does). Troubleshooting such situations can take time and effort.