Learn to implement SpringBoot based Microservices and RESTful API’s architecture
What you will learn
You will learn to create springboot based microservices
You will learn microservice concept of discovery service and registry
You will learn microservice concept of config server
You will learn microservice concept of API gateway
You will learn microservice concept of circuit breaker
You will learn microservice concept of API authentication with keyclock and Oauth2
Description
Learn to implement SpringBoot based Microservices and RESTful API’s architecture from scratch in a practical step by step approach.
Microservices architecture has many advantages like:
- Improved productivity
- Better resiliency
- Increased scalability
- Continuous integration/continuous delivery (CI/CD)
- Optimize business functionality
- and many moreWe will be implementing many important concepts of microservices architecture like
- Spring Cloud Config Server
- Spring Cloud Bus
- Spring Cloud Netflix Eureka
- Spring Cloud Circuit Breaker
- Spring Cloud Sleuth
- Spring Cloud Gateway
- Spring Cloud StreamWe will be creating many springboot projects from scratchΒ from spring initializer, some of the microservice will be based on mongodb and some will work with mysql database.
Following are the steps we will cover:
1.1-Generating and Setting up of product service
1.2-Create product entity class with annotation
1.3-Create product repository
1.4-Creating controller and GET and POST endpoints
1.5-Test GET and POST endpoint with Postman
2.1-Generating and Setting up of booking service
2.2-Understanding Discovery service and Service registry
2.3-Generating and Setting up Discovery Service
2.4-Registering Product service as client to Discovery service
2.5-Registering Booking service as client to Discovery service
2.6-Understanding config server and centralized configuration
2.7-Create git repo and add properties files
2.8-Generate github token and use in Intellij to push code
2.9-Generating and Setting up of Configuration service
2.10-Configuring config server to fetch different profile based properties from github
2.11-Connecting booking service to config server on dev profile
2.12-Connecting product service to config server on dev profile
2.13-RefreshScope introduction
2.14-Implementing RefreshScope Part-1
2.15-Implementing RefreshScope Part-2
2.16-HarshiCorp vault setup part-1
2.17-HarshiCorp vault setup part-2
2.18-Storing booking service secrets in Vault
2.19-getting vault data in microservice
3.1-Implementing message broker
3.2-Installing RabbiMQ
3.3.0-Using RabbitMQ in microservice
3.3.1-Fixing the vault secret fetching issue
3.4-What is API Gateway
3.5-Setup and Configuration of API gateway
3.6-Testing the API’s with API Gateway Part-1
3.7-Testing the API’s with API Gateway Part-2
3.8-Installing and setting up Keycloak server
3.9-Configuring keycloak client and user
3.10-Configuring spring security filter in API Gateway to intercept request
3.11-Configure Product Service as Resource Server
3.12-Testing API Gateway and Keycloak security
4.1-Overview of Circuit Breaker Pattern
4.2-Generating the stock project from springboot starter
4.3-Implementing entity repository and controller
4.4-Configuring properties for stock service
4.5-Implementing entity controller repository for booking service
4.6-Implementing Feign client call from booking to stock service