CloudFront is the content delivery network (CDN) from Amazon Web Services.
$0.02
Apache Kafka
Score 8.6 out of 10
N/A
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.
Amazon CloudFront is the perfect solution for any type of company. If a company is small or medium size, CloudFront offers 1 TB monthly free bandwidth which is more than for any small and medium size companies. If we compare the speed of CloudFront with other CDN, CloudFront is way ahead of their competitors and with 1 TB free bandwidth. If someone is ready to invest time in CloudFront documentation then he/she definitely go for it.
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 a website’s static data are based in New York City, people in Boston will get the content faster than people in San Francisco or Tokyo. The farther away customers are from a company’s data center, the slower the website or application loads. This problem can be fixed with a content delivery network like Amazon CloudFront
When a visitor requests a file from your website, Amazon CloudFront automatically sends the request to a copy of the file at the nearest edge location. This results in faster download times.
You may have great hosting but it doesn’t have the capacity or scalability offered by Google, Microsoft or Yahoo. The better CDNs like Amazon CloudFront offer higher availability, lower network latency and lower packet loss.
Amazon CloudFront provides 24/7 email and phone support
Amazon CloudFront Free Tier allows you to free up to 50 GB of data transfer and 2,000,000 HTTP and HTTPS requests / month for one year.
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
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
CloudFront is a good CDN solution. It can be a bit complicated to implement depending on your needs, but AWS tech support is great. You get to avoid a ton of upfront costs by going with CloudFront. It works best in conjunction with other AWS services in your infrastructure. Once you set it up, you won't need to do much to maintain it. It just works.
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.
Amazon has always been creative and leading, and I have been using its services for years. They are very reassuring and have fast and responsive support--you can call them from any time zone to respond quickly. High security on servers, open hands on changes, and increasing and decreasing server resources and features.
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.
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.