Illustration: Spring Cloud Training course

Spring Cloud Training: Microservices Architecture with Spring Boot

You already develop Java applications with Spring Boot and want to go further in the design of modern software architectures.

In this Spring Cloud training course, you will learn how to design, develop, and structure a microservices architecture using Spring Boot, Spring Cloud, an API Gateway, centralized configuration, service-to-service communication, and best practices for distributed systems.

3 days 9:00 a.m. to 4:30 p.m. Online, Montreal, Quebec City

Updated on

The Spring Cloud Training course at a glance

Length
3 days
Schedule
9:00 a.m. to 4:30 p.m.
Format
Live virtual class or in person in Montreal and Quebec City
Audience
Tous
Price
$1,652 per participant, or $1,404 for public bodies and non-profits (plus taxes)
Language
English

Doussou Formation and Spring Cloud Training: key facts

Upcoming Spring Cloud Training sessions

Online

  • Select
  • Select
  • Select
  • Select
  • Select
  • Select

Spring Cloud Training course outline

Introduction to the Spring Cloud training course

  • Presentation of the course objectives.
  • Understanding the role of Spring Cloud in the Spring ecosystem.
  • Identifying the limitations of a monolithic application.
  • Understanding when a microservices architecture is relevant.

Introduction to microservices

  • What is a microservice?
  • Monolith, modular monolith, and microservices.
  • Advantages and limitations of a microservices architecture.
  • Scalability, team autonomy, and independent deployment.
  • Network complexity, observability, security, and error management.

Splitting an application into microservices

  • Identifying business domains.
  • Understanding bounded contexts.
  • Defining the responsibilities of each service.
  • Avoiding shared databases.
  • Defining API contracts between services.
  • Hands-on workshop:
  • Analyzing an existing application.
  • Identifying potential services.
  • Defining service responsibilities and interactions.

Creating microservices with Spring Boot

  • Structure of a microservices project.
  • Creating multiple Spring Boot applications.
  • Exposing REST APIs.
  • Managing environment profiles.
  • Service-specific configuration.
  • Hands-on workshop:
  • Creating two Spring Boot microservices.
  • Setting up the first REST endpoints.
  • Configuring the services.

Communication between microservices

  • Synchronous communication with REST.
  • Using RestClient or WebClient.
  • Managing network errors.
  • Timeouts and error responses.
  • Propagating a correlation ID.
  • Hands-on workshop:
  • Making two microservices communicate.
  • Managing an error case between services.
  • Adding simple diagnostic logic.

Service discovery with Spring Cloud

  • Why use a service registry.
  • Introduction to Eureka.
  • Automatic service registration.
  • Service discovery.
  • Calling services by logical name.
  • Hands-on workshop:
  • Creating a Eureka Server.
  • Registering microservices.
  • Validating service discovery.

API Gateway with Spring Cloud Gateway

  • Role of an API Gateway.
  • Single entry point.
  • Routing to microservices.
  • Request and response filters.
  • Centralized management of cross-cutting behaviors.
  • Hands-on workshop:
  • Creating an API Gateway.
  • Configuring routes.
  • Exposing services through the Gateway.

Centralized configuration with Spring Cloud Config

  • Challenges of distributed configuration.
  • Principle of the Config Server.
  • Configuration by environment.
  • Managing shared and service-specific properties.
  • Hands-on workshop:
  • Creating a Config Server.
  • Centralizing the configuration of several services.
  • Changing configuration without modifying application code.

Microservices resilience

  • Understanding failures in distributed systems.
  • Timeouts, retries, and circuit breakers.
  • Introduction to Resilience4J.
  • Controlled service degradation.
  • Hands-on workshop:
  • Simulating a service failure.
  • Adding a resilience strategy.
  • Testing application behavior.

Asynchronous communication and events

  • Difference between synchronous and asynchronous communication.
  • Introduction to Kafka or an event-driven approach.
  • Producers, consumers, and business events.
  • Use cases in a microservices architecture.
  • Hands-on workshop:
  • Introduction or simple setup of an event-based exchange.
  • Publishing and consuming an event.

Microservices observability

  • Why observability is essential.
  • Application logs.
  • Correlation ID.
  • Health checks.
  • Metrics.
  • Introduction to Micrometer, Prometheus, Grafana, or equivalent tools.
  • Hands-on workshop:
  • Enabling health endpoints.
  • Reading logs from multiple services.
  • Following a request across several components.

Testing in a microservices architecture

  • Unit tests.
  • Integration tests.
  • API tests.
  • Contract validation between services.
  • Testing strategies adapted to distributed architectures.
  • Hands-on workshop:
  • Testing a REST endpoint.
  • Testing communication between services.
  • Validating an end-to-end scenario.

Local deployment with Docker Compose

  • Containerizing services.
  • Organizing a local environment.
  • Application services, databases, Gateway, and registry.
  • Hands-on workshop:
  • Running the microservices architecture with Docker Compose.
  • Validating the complete startup of the environment.
  • Testing an end-to-end scenario.

Your Spring Cloud Training trainer

Portrait of Danny

Danny

A graduate in Software Engineering from ÉTS, Danny has several years of experience in software development, web development, and technical training. As a full-stack developer, he works with a variety of technologies related to programming, databases, APIs, and web application…

View full profile

Prices and practical information

Preferred rate

$1,404 / participant

Public bodies and non-profits · plus taxes

Standard price

$1,652 / participant

Businesses and individuals · plus taxes

Practical information

  • Length: 3 days
  • Schedule: 9:00 a.m. to 4:30 p.m.
  • Format: Live virtual class or in person in Montreal and Quebec City
  • Payment: online (PayPal or card) when registering, or by invoice for organizations

Corporate Spring Cloud Training training

Train your whole team as a private group, on your own documents, at your premises or in a virtual class, on the dates that suit you.

Request an offer

Participant reviews

97% satisfaction (end-of-course evaluations, 120 evaluations) · Read all testimonials

Why take this Spring Cloud Training course

Objectives: what you will be able to do

  • Understand the principles of a microservices architecture.
  • Create multiple microservices with Spring Boot.
  • Set up an API Gateway with Spring Cloud Gateway.
  • Centralize configuration with Spring Cloud Config.
  • Use a service discovery mechanism.
  • Manage communication between microservices.
  • Apply resilience principles.
  • Understand the basics of observability in a distributed architecture.
  • Deploy a local microservices environment with Docker Compose.

Prerequisites

  • Good knowledge of Java.
  • Basic knowledge of Spring Boot.
  • Understanding of REST APIs.
  • Basic knowledge of databases.
  • Knowledge of Docker is an asset.

What is included

  • Course materials and exercise files for each participant
  • Certificate of attendance
  • Optional personalized coaching after the course
  • In public in-person sessions:
    • Tea and coffee
    • Lunch at a nearby restaurant
    • Parking (in some cities)
    • Wi-Fi access

Interested in the Spring Cloud Training course?