Adopting Microservices – Pragmatic Advice

Your company wants to adopt microservices. You are either really happy or terrified. A change like this can be great for those wanting to learn and improve their systems, but it does not come without its perils. If you want to be successful you will have to be pragmatic… Continue reading “Adopting Microservices – Pragmatic Advice”

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”

The State of Spring in 2018 – Devoxx UK Impressions

Thanks to my company – Scott Logic – I recently had a pleasure of attending the Devoxx UK 2018 conference. Among many interesting talks and speakers, there were quite a few Spring celebrities present. Juergen Holler (Father of Spring), Josh Long and Mark Heckler were all there. Here are my impressions from the conference. Continue reading “The State of Spring in 2018 – Devoxx UK Impressions”

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”

Effective Java Microservices require Effective Java

Writing good software requires using the right tools. Choosing the right frameworks, libraries and designing smart systems. With all that to learn and worry about, it is easy to forget about another very important thing: using your programming language wisely. In this article, I want to introduce you to “Effective Java” by Joshua Bloch.  Continue reading “Effective Java Microservices require Effective Java”

Spring Data – Microservices Data Companion

Spring Data is one of the flagship projects of the Spring ecosystem. If you need to work with data- be it SQL, non-SQL, using map-reduce or other, Spring Data most likely has you covered. In this article, I will introduce the Spring Data project and explain how it makes writing microservices easier. Continue reading “Spring Data – Microservices Data Companion”

Quick setup for Spring Cloud Data Flow with Docker Compose

Spring Cloud Data Flow requires quite a few dependencies in order to run it. In this blog post, I will show you Docker Compose tool and how it can be used to make that setup easy. Continue reading “Quick setup for Spring Cloud Data Flow with Docker Compose”

Spring’s WebFlux / Reactor Parallelism and Backpressure

Spring Boot 2.0 (and Spring 5) introduced WebFlux as a way to build reactive Microservices. WebFlux is built using Reactor, which introduces completely new ideas to Spring Boot parallelism. Backpressure, Schedulers, and Parallel Flux are a few concepts that we will look at closer in order to understand how to make the most of our reactive services. Continue reading “Spring’s WebFlux / Reactor Parallelism and Backpressure”

Java WebSockets made simple with Javalin

WebSockets is a technology that enables establishing an interactive connection between the front-end and the service. Being an advanced web technology, it may appear intimidating. In this blog post, I will show you how to easily build a WebSockets enabled service with Java and Javalin. Continue reading “Java WebSockets made simple with Javalin”

Microservices – the Architecture of Choices

One thing that differentiates microservices architecture from more traditional, monolithic development styles is the number of choices that have to be made. Which frameworks (if any) are you going to use? How to deal with configuration, orchestration or choreography etc. It may feel overwhelming. In this article, I will give you some advice on how to approach this Architecture of Choices with confidence and success. Continue reading “Microservices – the Architecture of Choices”