Microservices Development using Spring Boot
Courses

Lorem ipsum is a dummy or placeholder text commonly used in graphic design, publishing, and web development to fill empty spaces
32 Hours Instructor Led Live Classroom Training
Course Objectives
- Understanding the fundamentals of REST and its relationship with HTTP
- Designing resource URIs and using HTTP methods for CRUD operations
- Understanding idempotence in HTTP methods and how to implement it
- Understanding the Richardson Maturity Model and HATEOAS
- Developing RESTful APIs using Spring Boot and Spring MVC Rest
- Implementing exception handling, internationalization, content negotiation, and versioning in RESTful APIs
- Connecting RESTful services using Spring Data with Hibernate/JPA
- Understanding the basics of SOA, microservices, and cloud computing
- Building RESTful services with Service Registry, Webclient, and Resilience4J
- Implementing security in RESTful services with Basic Authentication and OAuth2
- Monitoring and tracking RESTful services using ELK stack and Zipkin
- Understanding Domain-Driven Design (DDD) and applying strategic and tactical patterns using Spring Boot Data
- Implementing Saga and CQRS patterns for distributed transactions and event-driven systems
- Developing reactive RESTful services with Spring WebFlux
- Containerizing RESTful API apps using Docker
- Deploying RESTful services to Kubernetes and understanding Kubernetes architecture and concepts
Course Content
RESTful API Overview
- Spring RESTful API complete example
- SOA Overview
- Microservice Overview
- Spring Boot and Microservices
- Cloud Services : IaaS, PaaS, Saas
- Cloud Native Applications
- Introduction to Naming Server
- Setting up Eureka Naming Server
- Connecting a service to Eureka
- Introduction to reactive programming
- RestTemplate vs Webclient
- Prevent failure cascades using Resilience4J, Circuit Breaker, Rate limiter, Retry & Bulkhead
- Understand “Twelve-Factor App” configuration
- Read external configuration & Support multiple environments using Spring profiles
- Spring Cloud Configuration Server
- Refresh configuration without restarting your application
- Implementing Basic Authentication with Spring Security
- Single sign-on with OAuth2
- Introduction to ELK stack & Zipkin
- Collecting and analyzing logs using ELK stack
- Distributed tracing using Zipkin
- Strategic Patterns (Domain, Sub-domain, Bounded Context)
- Tactical Patterns (Entity, Value Object, Aggregate, Repositories)
- Using Spring Boot Data - CrudRepository/JpaRepository
- How to implement distributed transactions?
- what are events and commands?
- When and how to apply?
- Introduction to reactive programming
- RestTemplate vs Webclient
- Containerization
- Setup the Dockerfile, Build the docker image
- Creating Kubernetes Cluster
- Kubernetes Concepts - Pods, Replica Sets and Deployment
- Understanding Services in Kubernetes
- Understanding Kubernetes Architecture - Master Node and Nodes
- Build Docker Image and Push to Docker Hub for Hello World Rest API
- Deploy Spring Boot Sample Rest API to Kubernetes