An active internet connection
Java 8+
Docker
Maven
Git client
Chapter 1, Introduction to Microservices, will introduce you to the microservices
architecture, cloud environment, etc. You will learn the difference between a
microservice based application and a monolith application while also learning
how to migrate to a microservices application.
Chapter 2, Spring for Microservices, will introduce you Spring Boot framework.
You will learn how to effictively use it to create microservice application. We
will cover such topics like creating REST API using Spring MVC annotations,
providing API documentation using Swagger2, and exposing health checks and
metrics using Spring Boot Actuator endpoints.
Chapter 3, Spring Cloud Overview, will provide a short description of the main
projects being a part of Spring Cloud. It will focus on describing the main
patterns implemented by Spring Cloud and assigning them to the particular
projects.
Chapter 4, Service Discovery, will describe a service discovery pattern with Spring
Cloud Netflix Eureka. You will learn how to run Eureka server in standalone
mode and how to run multiple server instances with peer-to-peer replication. You
will also learn how to enable discovery on the client side and register these
clients in different zones.
Chapter 5, Distributed Configuration with Spring Cloud Config, will describe how
use distributed configuration with Spring Cloud Config in your applications. You
will learn how to enable different backend repositories of property sources and
push change notifications using Spring Cloud Bus. We will compare discovery
first bootstrap and config first bootstrap approaches to illustrate integration
between discovery service and configuration server.
Chapter 6, Communication Between Microservices, will describe the most
important elements taking a part in an inter-service communication: HTTP
clients and load balancers. You will learn how to use Spring RestTemplate,
Ribbon, and Feign clients with or without
1