Getting Started with Kafka in Spring Boot

Kafka seems to only be gaining in popularity. A few years ago you could mostly see it in Big Data engineering context. These days, Kafka is starting to power more common message-oriented architectures. In this article, I want to give you a basic introduction to working with Spring Boot and Kafka. Continue reading “Getting Started with Kafka in Spring Boot”

How to easily run Kafka with Docker for Development

Kafka is becoming a popular addition to microservice oriented architectures. Despite its popularity, it may be tricky to run it on your development machine- especially if you run Windows. In this short article, I will show you a simple way to run Kafka locally with Docker. Continue reading “How to easily run Kafka with Docker for Development”

Reactive Streams in Java – introducing the new SPI

One of the new features of Java 9 is the introduction of the Reactive Streams SPI to the JDK. Reactive programming keeps gaining in popularity, mainly because it works well. If you are not familiar with the principles, I recommend checking out The Reactive Manifesto to which I subscribe. To learn more about Reactive Streams in Java, read on. Continue reading “Reactive Streams in Java – introducing the new SPI”

Tracing messages in Choreography with Sleuth and Zipkin

One of the challenges in building distributed system is having a good visibility of what is happening inside them. This challenge is only magnified when dealing with choreography- microservices, loosely coupled, communicating via messaging. In this article you will see how Sleuth and Zipkin help to solve that problem.

Continue reading “Tracing messages in Choreography with Sleuth and Zipkin”

Handling bad messages with RabbitMQ and Spring Cloud Stream

When dealing with messaging in a distributed system, it is crucial to have a good method of handling bad messages. In complicated systems, messages that are either wrong, or general failures when consuming messages are unavoidable. See how you can deal with this problem using Dead Letter Queues, RabbitMQ and Spring Boot Cloud. Continue reading “Handling bad messages with RabbitMQ and Spring Cloud Stream”

Setting up RabbitMQ with Spring Cloud Stream

Message queues are very important and useful tools that you can utilize for for your Microservices oriented architecture. Many developers are hesitant using them with the fear that they may add too much complexity and learning curve to understanding of their system. I will show you how to make use of RabbitMQ and Spring Cloud Stream to get some basic messaging routes set-up with a very little effort!

Continue reading “Setting up RabbitMQ with Spring Cloud Stream”