E4developer Newsletter - May 2018 - Number 3

E4developer Newsletter - May 2018 - Number 3

In the last month, I spent a lot of time writing about Reactive Spring Boot. I believe that Reactive Microservices are only going to grow in popularity, so I really recommend you to get to know them! Beyond that, you can see some other interesting technologies like Javalin and Spring Data being showcased. These can help you with making your microservices architecture even more robust and easy to work with. ...

May 7, 2018 · 2 min · Bartosz Jedrzejewski
Spring Data - Microservices Data Companion

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. Working with data is at the core of software development. This data can be in different forms: Relational / SQL Database NoSQL Database Graph Databases (like Neo4j) LDAP records Distributed cache technologies (Redis) Other technologies and variations of the above How great would it be to have a single technology that you could rely on when dealing with any of the above? Well, it is your lucky day- Spring Data can help you with all these and more! ...

May 5, 2018 · 6 min · Bartosz Jedrzejewski
Quick setup for Spring Cloud Data Flow with Docker Compose

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. I have written an introduction to Spring Cloud Data Flow where in order to run the Data Flow server, you need to have 3 other Docker containers running. This is not that bad, but imagine if you had to have more dependencies? Or if you want to have that process easily replicable? Sharing that setup with other developers on the team? You can see that it would be good to have a better way of doing this… ...

May 2, 2018 · 3 min · Bartosz Jedrzejewski
Spring’s WebFlux / Reactor Parallelism and Backpressure

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. I have recently written articles on Getting Started with WebFlux and Concurrency in Spring Boot. One thing that I did not explore enough in these articles were the concurrency implications of building a WebFlux based reactive microservice. ...

April 28, 2018 · 7 min · Bartosz Jedrzejewski
Java WebSockets made simple with Javalin

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. A quick intro to WebSockets WebSockets are a relatively new (2011), but a well-supported communication protocol. At the time of writing every major browser supports them. ...

April 26, 2018 · 5 min · Bartosz Jedrzejewski
How to stay up to date with Java and Tech? Use Twitter!

How to stay up to date with Java and Tech? Use Twitter!

Java, Microservices, other JVM languages… Programming, best practices, architecture… Libraries, frameworks, methodologies… I could go on for a while here. Being a passionate and up to date Software Developer is a challenge. How do you stay up to date with all this? I will let you on a well-known secret- use Twitter! Read on to find out what can Twitter help you with and how I use it to stay up to date. ...

April 22, 2018 · 7 min · Bartosz Jedrzejewski
Microservices - the Architecture of Choices

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. I enjoy having multiple choices and making decisions about the architecture. For some people and projects, this is a scary thing. It does not have to be. With the advice presented here, you can take back control and feel positive about the choices that you get to make. ...

April 18, 2018 · 5 min · Bartosz Jedrzejewski
WebFlux and servicing client requests - how does it work?

WebFlux and servicing client requests - how does it work?

I have previously written about Getting Reactive with Spring Boot 2.0 and Reactor, where I have given an introduction to reactive programming in Spring Boot. In this article, I will further explore WebFlux and the ways it impacts servicing client requests- what happens when you return a Flux<>? Simple Flux When you write a Controller that returns a list of numbers from your function, you get a list of numbers when you call it. How does it work when you return a Flux like that?: ...

April 14, 2018 · 5 min · Bartosz Jedrzejewski
Getting Reactive with Spring Boot 2.0 and Reactor

Getting Reactive with Spring Boot 2.0 and Reactor

Reactive programming is gaining a rapid popularity in the JVM community. With Java 9 natively embracing the Reactive Streams and Spring Boot 2.0 including the WebFlux, it is hard to argue with this statement. Spring uses Reactor for its own reactive support and WebFlux relies on that support. In this article, I will show you how to get into reactive programming with Reactor and Spring Boot 2.0. What is Reactor? Project Reactor is quite well described by the tagline on their official page: ...

April 11, 2018 · 5 min · Bartosz Jedrzejewski
E4developer Newsletter - April 2018 - Number 2

E4developer Newsletter - April 2018 - Number 2

Thank you for reading my newsletter. I have sent the previous newsletter on the 1st of March and I decided to send these on a monthly basis. Expect the next one in May. I have been busy looking into different areas of software development, including Spring, Kotlin, and DevOps. I have been particularly interested in the idea of reactive-microservices and Reactive Streams. I think these will impact Java development in a significant way. Check Reactive Streams in Java – introducing the new SPI to see how Java 9 is already embracing these ideas. ...

April 8, 2018 · 2 min · Bartosz Jedrzejewski