I recently heard that Apache Kafka does not store data on disks. Yeah, I’m not kidding, my mate told me, that Kafka manages most of the operations in memory and doesn’t rely heavily on disks. That seemed odd to me, and today I will try to investigate Kafka’s persistence process...
Continue reading...apache kafka
Message Delivery Semantics in Distributed Systems
Today we are going to be talking about message delivery semantics in Apache Kafka. Since interactions using Kafka are mostly asynchronous there are no direct connections between client and server. Moreover, there are no clients and servers of their usual meaning at all. Apache Kafka serves as an intermediate asynchronous...
Continue reading...Increasing reliability/durability of Apache Kafka
What comes to your mind when you hear the term “Distributed Messaging”? Well, not even that, let’s paraphrase: What are your expectations concerning the messaging in distributed systems? I suppose that “reliability” will occupy one of the top positions in the list of answers. What sense do we put into...
Continue reading...Beware of Message Ordering In Apache Kafka Topic Partitions
Hi! I’ve started a new series on my YouTube channel named “Alex Tried to Understand”. It will be short tech-related clips dedicated to some technical aspects. The first episode is dedicated to the ordering guarantees in Apache Kafka. Synopsis The official docs state that Kafka preserves message ordering inside a...
Continue reading...Add healthchecks for Apache Kafka in docker-compose
Let’s say we have an application inside docker image that connects to Apache Kafka on start and tries to publish a bunch of messages to topics. Now let’s imagine that you want to test your app locally and thus you’ve created a docker-compose.yml with Apache Kafka, Zookeeper, and your application...
Continue reading...Hands-on: Akka + Akka HTTP + Akka Streams + Alpakka Java Tutorial
Which technologies will be used Today Akka offers a great technology stack that is built on top of the Actor paradigm. It delivers a great Akka Stream API which together with a simplified concurrency model and great abilities for use and control backpressure empowers us with top-class tools to create...
Continue reading...