Module 01 : Spring Essentials
- Why Spring
- Configuration using Spring
- Bean creation
- Data Management
Module 02 : Spring boot Introduction
- Introduction to Spring Boot
- Value Proposition of Spring Boot
- High-level Spring Boot features
- Creating a simple Boot application using Spring
- Initializer website
Module 03 : Spring boot dependencies, auto-configuration and runtime
Module 04 : JPA with Spring and Spring data
- Quick introduction to ORM with JPA
- Benefits of using Spring with JPA
- JPA configuration in Spring
- Configuring Spring JPA using Spring Boot
- Spring Data JPA dynamic repositories
Module 05 : Spring MVC Architecture and Overview
- Introduction to Spring MVC and request processing
- Controller method signatures
- Using @Controller, @RestController and @GetMapping annotations
- Configuring Spring MVC with Spring Boot
- Spring Boot packaging options, JAR or WAR
Module 06 : REST with spring MVC
- An introduction to the REST architectural style
- Controlling HTTP response codes
- Implementing REST with Spring MVC
- Spring MVC’s Http Message Converters and 5 automatic content negotiation
Module 07 : Security
- What problems does Spring Security solve?
- Configuring authentication
- Implementing authorization by intercepting URLs
- Authorization using OAuth
- Authorization at the Java method level
- Understanding the Spring Security filter chain
Module 08 : Actuators, Metrics and Health indicators
- Enabling Spring Boot Actuator
- Custom Metrics
- Health Indicators
- Creating custom Health Indicators
- External monitoring systems
Module 09 : Spring boot Testing Enhancements
- Testing overview
- Integration testing and slices
- Slices to test different layers of the application
Module 10 : Microservices Concepts
- Monolithic Services
- Service Oriented Architecture
- Introduction to Microservices
- Evolution of Microservices
- Cloud and Microservices
- Containers and Microservices
Module 11 : Microservices Architecture
- Distributed architecture challenges and considerations
- Service component granularity
- Bounded context concepts and challenges
- Microservices drivers and advantages
- API layer overview
Module 12 : Microservices Design Techniques
- Service identification techniques
- Service template design patterns
- Event-driven services
- Service communication patterns
- Remote access error handling
Module 13 : Deployment patterns
- Multiple service instances per host
- Service instance per host
- Service instance per VM
- Service instance per Container
- Serverless deployment
- Service deployment platform
Module 14 : Service discovery
- Client-side discovery
- Server-side discovery
- Service registry
- Self registration
- 3rd party registration
Module 15 : Microservices Communication style
- Remote Procedure Invocation
- Messaging
- Domain-specific protocol
Module 16 : Data in Microservices
- Distributed data challenges
- Creating data domains
- Dealing with common data
- Deferred data migration
- Distributed Transactions
- Eventual consistency patterns
Module 17 : Microservices Migration Techniques
- Service-based architecture
- Service Platforms
- Decoupling Capability
- Atomic Evolution
- Microservices migration patterns
- Architectural modularity
Module 18 : Microservices Security and Reliability
- Authentication and Authorization
- API access control for microservices
- API Gateways
- Circuit Breaker
- Access Tokens
- Role based Authentication
- External Security tools
Module 19 : Monitoring
- Log aggregation
- Application metrics
- Audit logging
- Distributed tracing
- Exception tracking
- Health check API
- Log deployments and change