
Enhance REST API documentation by using OpenAPI definition with info, contact, license, and external documentation in the spring boot accounts application.
Enhance rest api documentation by using swagger annotations @Tag, @Operation, and @ApiResponse to add controller and api level summaries, descriptions, and precise response details in Swagger UI.
Apply @Schema annotations to DTOs to create business-friendly names, descriptions, and examples in swagger/openapi, and document ApiResponse with ErrorResponseDto for 500 errors.
Enhance REST API documentation with @Schema and example data, and document error responses using ErrorResponseDto, while using 417 for update and delete failures instead of 500.
Explore key Spring Boot annotations and classes for building REST services, including RestController, GetMapping, PostMapping, ResponseEntity, RequestHeader, ControllerAdvice, ExceptionHandler, and RequestBody, with practical use in the Accounts microservice.
Build cards and loans microservices with the same standards as accounts, implementing h2 database, entities, jpa repositories, dto pattern, CRUD APIs, exception handling, auditing, and REST documentation.
Use the strangler fig pattern to gradually replace a legacy monolith with microservices, using domain-driven design to rightsize services, enable coexistence, and safely migrate cards, accounts, and loans.
Define cloud native applications and their characteristics, including 12-factor and 15-factor methodologies, and explain how containers, service meshes, microservices, immutable infrastructure, and declarative APIs enable scalable, observable, vendor-agnostic cloud deployments.
Identify cloud-native applications by their microservices architecture and containerization with Docker, ensuring portability across cloud platforms. Use Kubernetes for horizontal scalability, DevOps-driven CI/CD, and resilient, fault-tolerant deployment with automated pipelines.
Compare cloud-native applications with traditional enterprise apps, highlighting predictable behavior and easier issue tracking. See how Docker and Kubernetes enable OS abstraction, sizing, and DevOps-driven continuous delivery with automated recovery.
Explore the 12-factor and 15-factor methodologies for cloud native applications, from Heroku's original guidelines to Kevin Hoffman's expanded framework, and their role in scalable, portable deployments.
Understand the first five 15-factor principles for microservices: one code base per application, api-first design, explicit dependency management, design-build-run-release, and externalized configuration.
Explore the 15-factor methodology focusing on logs routed to standard output, log aggregation, disposability, and environment parity for cloud native microservices.
Explore the 15 factor methodology for cloud native microservices, covering port binding, stateless design, concurrency, telemetry, and zero trust authentication using OAuth 2.1 and OpenID Connect.
Explore configuration management challenges in microservices. Separate configurations from business logic to reuse a single docker image across environments using Spring Boot, external config, or Spring Cloud Config Server.
Learn how Spring Boot externalizes configuration for microservices using properties, yaml, environment variables, and command line arguments; explore priority and approaches like @Value, the Environment interface, and @ConfigurationProperties.
Read environment properties using the spring environment interface by autowiring it into a controller and exposing a java-version endpoint that returns JAVA_HOME.
Apply spring boot profiles and application.yml properties to the cards and loans microservices, mirroring accounts microservice rest apis, using the eazybytes/microservice GitHub repo for reference.
Discover how accounts, loans, and cards microservices share a network behind an api gateway, handling external traffic and securing entry with firewall, auditing, and logging, while addressing internal communication challenges.
Understand why traditional load balancers fail for microservices, lacking service discovery and registration, as IPs and DNS mappings churn in dynamic cloud environments.
Coordinate service discovery and registration with a central registry to manage dynamic microservice instances. Implement client-side discovery with load balancing across multiple instances.
Explains client side service discovery and load balancing with a service registry, where services register at startup and clients use Spring Cloud to select backing service instances.
Learn to manage external traffic in microservices using a single entry point with an edge server or API gateway, and centralize cross-cutting concerns like logging, auditing, tracing, and security.
Understand why a separate edge server or api gateway sits between clients and microservices, enforcing security, auditing, logging, routing, retries, quotas, and fault tolerance.
Explore API gateway design patterns built with Spring Cloud Gateway, including edge servers, routing, offloading cross-cutting concerns, backend for frontend, and gateway aggregation for multi-service data.
Explore a typical microservices scenario where a slow cards service causes ripple effects to accounts and edge gateway, underscoring the need for resiliency with a secured breaker.
Explore the circuit breaker pattern to prevent cascading failures in microservices by failing fast, monitoring remote calls, and enabling graceful recovery with fallbacks and partial traffic checks.
Explore how the circuit breaker pattern controls traffic to microservices by using closed, open, and half-open states with a failure-rate threshold, enabled by Resiliency4j and Spring Boot.
Explore the retry pattern in microservices, using exponential backoff for transient failures and applying retries only to idempotent operations, with optional circuit breaker integration.
This course requires you to download Docker Desktop from docker website. If you are a Udemy Business user, please check with your employer before downloading software.
'Master Microservices with SpringBoot,Docker,Kubernetes' course will help in understanding about microservices architecture and how to build it using SpringBoot, Spring Cloud components, Docker and Kubernetes. By the end of this course, students will understand all the below topics,
What is microservices architecture and how it is different from monolithic and SOA architectures
How to build production ready microservices using Java, Spring, SpringBoot and Spring Cloud
How to document microservices using Open API Specification and Swagger
How to right size microservices and identify service boundaries
Role of Docker in microservices and how to build docker images, containers
Role of Docker compose and how to use it to run all the microservices inside a application
What are cloud native apps & 15 factor methodology behind them
Configuration management in microservices using Spring Cloud Config Server
Service Discovery and Registration pattern inside microservices and how to implement using Spring Eureka server
Handling Cross cutting concerns and routing inside microservices using Spring Cloud Gateway
Building resilient microservices using RESILIENCE4J framework
Implementing observability and monitoring using Prometheus, Loki, Promtail, Tempo and Grafana
Securing microservices using OAuth2, OpenID connect and Spring Security
How to build event driven microservices using RabbitMQ, Kafka, Spring Cloud Functions and Spring Cloud Stream
Role of Kubernetes in microservices as a container orchestration framework.
How to setup a Kubernetes cluster inside GCP using Google Kubernetes Engine and deploy microservices inside it
What is Helm & it's role in microservices world
Most commonly used Docker, Kubernetes and Helm commands
The pre-requisite for the course is basic knowledge of Java, Spring and interest to learn microservices.