Microservices Architecture Training
Microservices Architecture is one of the methods for implementing a service-oriented architecture.
This training helps you gain expertise in developing a Microservices Architecture-based solution. Apply Microservices principles to specific business requirements to build a scalable & performing solution. After completing this training, you will have gained the knowledge about various Microservices architectural styles, how to select the appropriate architecture design and how Netflix has used Microservices to scale.
Evolution of Microservices
Learning Objectives: In this Module, you will learn how Microservices have evolved over time and how different is Microservices from SOA. In addition, you will get to know about different architectures and where does Microservices architecture fit.
- Monolithic Architecture
- Distributed Architecture
- Service oriented Architecture
- Microservice and API Ecosystem
- Microservices in nutshell
- Point of considerations
- SOA vs. Microservice
- Microservice & API
- Architecture styles
- Advantages of different architecture styles
- Limitations of Architectures
- What is Microservices
Learning Objectives: Learn the various principles of REST, the various characteristics of Microservices, the importance of messaging in Microservices architecture, and the concept of distributed transactions.
- REST Architecture principles
- Microservice Characteristics
- Inter-Process Communications
- Microservice Transaction Management
- Considerations while building microservices
- How the services communicate with each other
- How the transaction management is done in microservice.
Microservices – Design
Learning Objectives: This Module gives you an insight into Domain Driven Design, the approach called Big Ball of Mud, the approaches and their strategies that can be used while moving from Monolithic to Microservices.
- Domain Driven Design
- Big Mud Ball to Sweet Gems
- Untangling the Ball of MUD
- Kill the MUD Ball growth
- Decouple the User interface and Backend Business Logic
- MUD Ball to Services
- Microservice Design Patterns
- Microservice Architecture Decisions
- Setting up the root project
- Spring Boot – Hello World
- Returning json entity as response
- Spring Boot dev tools
- Intro to Lombok
- Adding Items to Mongo DB
- Querying Mongo
- Accessing an SQL database
- Spring Data Rest and HATEOAS
- Connecting to an Elasticsearch Server
- Searching our Elasticsearch Server
- Architecture Decisions
- Monolithic to Microservices redesign.
- Learn to identify and design microservices.
Microservices – Security
Learning Objectives: Know why security is an important factor to be considered in Microservices. Learn what are the various best practices in Microservice security design, and what techniques can be used to implement security.
- Why is Security important?
- Microservice Security Principles
- Microservice Security techniques
- Access Tokens
- Oauth 2.0
- How to secure a Microservice using OAuth 2.0
- Spring Boot Security Setup
- Basic Spring security
- Moving to Oauth2
- Implementing Single Sign On
- Implementing Authorization Server
- Implementing Resource Server
- Oauth 2.0
- Security tokens
- Secure by design
Microservices – Testing
Learning Objectives: Learn the different testing strategies that can be implemented in Microservices, how Spring Boot features help in testing Microservices, and the various testing tools that are available to be used.
- Testing scenarios and strategy
- Test at Different Levels
- Testing Best Practice for Microservices
- Testing methodology
- How to test Microservices
Microservices Reference Architecture
Learning Objectives: Get an insight into Microservices reference architecture, what are the key Microservice enablers and how do DevOps and Microservice go hand in hand. In addition, know what features an API system provide to Microservices, and how Netflix has benefited by implementing Microservices.
- Reference Architecture
- Microservice Enablerc
- Microservices @ Netflix
- Reading properties in various ways
- Implementing config server
- Setting up Discovery Server
- Setting up Discovery Client
- Overview of Actuator Endpoints
- API Gateway and Dynamic Routing
- IDeclarative Rest Client
- Hystrix Fault Tolerance
- Distributed Caching
- Distributed Sessions
- Need for Event Driven Systems
- Building Event Driven Systems
- Implementing Distributed Tracing
- Understanding Metrics
- Monitoring Microservices
- Spring Boot Admin
- Scalable Architecture
- How Netflix uses Microservices
- How cloud and DevOps enables Microservice architecture