Book Image

Spring Boot 2.0 Projects

By : Mohamed Shazin Sadakath
Book Image

Spring Boot 2.0 Projects

By: Mohamed Shazin Sadakath

Overview of this book

Spring Boot is a lightweight framework that provides a set of tools to create production-grade applications and services. Spring Boot 2.0 Projects is a comprehensive project-based guide for those who are new to Spring, that will get you up to speed with building real-world projects. Complete with clear step-by-step instructions, these easy-to-follow tutorials demonstrate best practices and key insights into building efficient applications with Spring Boot. The book starts off by teaching you how to develop a web application using Spring Boot, followed by giving you an understanding of creating a Spring Boot-based simple blog management system that uses Elasticsearch as the data store. Next, you’ll build a RESTful web services application using Kotlin and the Spring WebFlux framework - a new framework that enables you to create reactive applications in a functional way. Toward the last few chapters, you will build a taxi-hailing API with reactive microservices using Spring Boot, in addition to developing a Twitter clone with the help of a Spring Boot backend. To build on your knowledge further, you’ll also learn how to construct an asynchronous email formatter. By the end of this book, you’ll have a firm foundation in Spring programming and understand how to build powerful, engaging applications in Java using the Spring Boot framework.
Table of Contents (12 chapters)

Using asynchronous data transfer for cross-microservice communication

Microservices need to communicate with each other from time to time. The HTTP APIs that microservices expose are usually reserved for the external systems invoking them, but when they need to talk internally, it is best to use an asynchronous way to communicate so that they can still communicate even when one microservice is down or not functioning properly.

Asynchronous data transfer using Redis

Redis offers asynchronous data transfer between an application using a publisher/subscriber model, which enables one application to publish to a channel and another application to subscribe to that channel and perform actions when an event is received. The publishers...