Book Image

Spring 5.0 Microservices - Second Edition

By : Rajesh R V
Book Image

Spring 5.0 Microservices - Second Edition

By: Rajesh R V

Overview of this book

The Spring Framework is an application framework and inversion of the control container for the Java platform. The framework’s core features can be used by any Java application, but there are extensions to build web applications on top of the Java EE platform. This book will help you implement the microservice architecture in Spring Framework, Spring Boot, and Spring Cloud. Written to the latest specifications of Spring that focuses on Reactive Programming, you’ll be able to build modern, internet-scale Java applications in no time. The book starts off with guidelines to implement responsive microservices at scale. Next, you will understand how Spring Boot is used to deploy serverless autonomous services by removing the need to have a heavyweight application server. Later, you’ll learn how to go further by deploying your microservices to Docker and managing them with Mesos. By the end of the book, you will have gained more clarity on the implementation of microservices using Spring Framework and will be able to use them in internet-scale deployments through real-world examples.
Table of Contents (11 chapters)

Reactive Spring Boot microservices


Reactive microservices mentioned in Chapter 2, Related Architecture Styles and Use cases, basically highlight the need of asynchronously integrating microservices in an ecosystem. Even though external service calls primarily get benefits from reactive style programming, reactive principles are useful in any software development, as it improves resource efficiency and scalability characteristics. Therefore, it is important build microservices using reactive programming principles.

There are two ways we can implement reactive microservices. The first approach is to use the Spring WebFlux in the Spring Framework 5. This approach uses reactive style web server for microservices. The second approach is to use a messaging server such as RabbitMQ for asynchronous interaction between microservices. In this chapter, we will explore both the options mentioned here.

Reactive microservices using Spring WebFlux

Reactive programming in Java is based on the Reactive Streams...