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
Drupal
Score 7.0 out of 10
N/A
Drupal is a free, open-source content management system written in PHP that competes primarily with Joomla and Plone. The standard release of Drupal, known as Drupal core, contains basic features such as account and menu management, RSS feeds, page layout customization, and system administration.
N/A
Pricing
Apache Kafka
Drupal
Editions & Modules
No answers on this topic
No answers on this topic
Offerings
Pricing Offerings
Apache Kafka
Drupal
Free Trial
No
No
Free/Freemium Version
No
No
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
Drupal
Features
Apache Kafka
Drupal
Security
Comparison of Security features of Product A and Product B
Apache Kafka
-
Ratings
Drupal
8.1
74 Ratings
1% below category average
Role-based user permissions
00 Ratings
8.174 Ratings
Platform & Infrastructure
Comparison of Platform & Infrastructure features of Product A and Product B
Apache Kafka
-
Ratings
Drupal
7.6
69 Ratings
2% below category average
API
00 Ratings
7.264 Ratings
Internationalization / multi-language
00 Ratings
8.160 Ratings
Web Content Creation
Comparison of Web Content Creation features of Product A and Product B
Apache Kafka
-
Ratings
Drupal
6.5
78 Ratings
18% below category average
WYSIWYG editor
00 Ratings
6.171 Ratings
Code quality / cleanliness
00 Ratings
8.175 Ratings
Admin section
00 Ratings
6.878 Ratings
Page templates
00 Ratings
5.577 Ratings
Library of website themes
00 Ratings
5.468 Ratings
Mobile optimization / responsive design
00 Ratings
6.572 Ratings
Publishing workflow
00 Ratings
6.876 Ratings
Form generator
00 Ratings
6.372 Ratings
Web Content Management
Comparison of Web Content Management 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.
If you want to set up a basic Not For Profit (NFP) Membership system and content base, Word Press is easier than Drupal. However, if you have specific needs that require a fair bit of customisation then Drupal is the best CRM available. If the webmaster is confident with PHP and SQL, Drupal allows a lot of creativity.
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).
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
This is not an easy CMS to work with if you don't have a good understanding of website development. It isn't "plug-and-play" like Wordpress or Shopify.
Over time, doing major updates to the system can be taxing, especially if you aren't well-versed enough in doing system updates in line with your "child" theme and code.
The CMS can become somewhat cumbersome with server resources if not carefully optimized while you build and customize it to your liking.
The time and money invested into this platform were too great to discontinue it at this point. I'm sure it will be in use for a while. We have also spent time training many employees how to use it. All of these things add up to quite an investment in the product. Lastly, it basically fulfills what we need our intranet site to do.
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
As a team, we found Drupal to be highly customizable and flexible, allowing our development team to go to great lengths to develop desired functionalities. It can be used as a solution for all types of web projects. It comes with a robust admin interface that provides greater flexibility once the user gets acquainted with the system.
Drupal itself does not tend to have bugs that cause sporadic outages. When deployed on a well-configured LAMP stack, deployment and maintenance problems are minimal, and in general no exotic tuning or configuration is required. For highest uptime, putting a caching proxy like Varnish in front of Drupal (or a CDN that supports dynamic applications).
Drupal page loads can be slow, as a great many database calls may be required to generate a page. It is highly recommended to use caching systems, both built-in and external to lessen such database loads and improve performance. I haven't had any problems with behind-the-scenes integrations with external systems.
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.
As noted earlier, the support of the community can be rather variable, with some modules attracting more attraction and action in their issue queues, but overall, the development community for Drupal is second to none. It probably the single greatest aspect of being involved in this open-source project.
I was part of the team that conducted the training. Our training was fine, but we could have been better informed on Drupal before we started providing it. If we did not have answers to tough questions, we had more technical staff we could consult with. We did provide hands-on practice time for the learners, which I would always recommend. That is where the best learning occurred.
The on-line training was not as ideal as the face-to-face training. It was done remotely and only allowed for the trainers to present information to the learners and demonstrate the platform online. There was not a good way to allow for the learners to practice, ask questions and have them answered all in the same session.
Plan ahead as much you can. You really need to know how to build what you want with the modules available to you, or that you might need to code yourself, in order to make the best use of Drupal. I recommend you analyze the most technically difficult workflows and other aspects of your implementation, and try building some test versions of those first. Get feedback from stakeholders early and often, because you can easily find yourself in a situation where your implementation does 90% of what you want, but, due to something you didn't plan for, foresee, or know about, there's no feasible way to get past the last 10%
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.
Drupal can be more complex to learn, but it offers a much wider range of applications. Drupal’s front and backend can be customized from design to functionality to allow for a wide range of uses. If someone wants to create something more complex than a simple site or blog, Drupal can be an amazing asset to have at hand.
Drupal is well known to be scalable, although it requires solid knowledge of MySQL best practices, caching mechanisms, and other server-level best practices. I have never personally dealt with an especially large site, so I can speak well to the issues associated with Drupal scaling.
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.