Learn Microservices with Spring Boot

A Practical Approach to RESTful Services Using an Event-Driven Architecture, Cloud-Native Patterns, and Containerization

  • Moisés Macero García

Table of contents

  1. Front Matter
    Pages i-xvi
  2. Moisés Macero García
    Pages 1-7
  3. Moisés Macero García
    Pages 9-23
  4. Moisés Macero García
    Pages 25-74
  5. Moisés Macero García
    Pages 75-99
  6. Moisés Macero García
    Pages 101-148
  7. Moisés Macero García
    Pages 149-214
  8. Moisés Macero García
    Pages 215-281
  9. Moisés Macero García
    Pages 283-415
  10. Back Matter
    Pages 417-426

About this book


Build Java-based microservices architecture using the Spring Boot framework by evolving an application from a small monolith to an event-driven architecture composed of several services. This revised book follows an incremental approach in teaching the structure of microservices, test-driven development, and common patterns in distributed systems such as service discovery, load balancing, routing, centralized logs, per-environment configuration, and containerization.

This updated book now covers what's been added to the latest Spring Boot release, including support for the latest Java SE; more deep-dive knowledge on how Spring Boot works; testing with JUnit 5; changes in the Spring Cloud tools used for service discovery and load balancing; building Docker images using cloud-native buildpacks; a basic centralized logging solution; E2E traceability with Sleuth; centralized configuration with Consul; many dependency upgrades; support for Spring Data Neumann; and more.

Author Moises Macero uses a pragmatic approach to explain the benefits of using this type of software architecture, instead of keeping you distracted with theoretical concepts. He covers some of the state-of-the-art techniques in computer programming, from a practical point of view. You’ll focus on what's important, starting with the minimum viable product but keeping the flexibility to evolve it.

You will:
  • Build microservices with Spring Boot
  • Discover architecture patterns for distributed systems such as asynchronous processing, eventual consistency, resilience, scalability, and more
  • Use event-driven architecture and messaging with RabbitMQ
  • Master service discovery with Consul and load balancing with Spring Cloud Load Balancer
  • Route requests with Spring Cloud Gateway
  • Keep flexible configurations per environment with Spring Cloud Consul
  • Trace every request from beginning to end with Sleuth and centralized logging
  • Deploy your microservices anywhere as Docker containers
  • Start all the components in the microservice architecture with Docker Compose


Java Spring microservices Boot RabbitMQ programming code source web services web development

Authors and affiliations

  • Moisés Macero García
    • 1
  1. 1.New YorkUSA

Bibliographic information