Create a microservice-architected restaurant application.
We will have an inventory API with one service per ingredient. Each ingredient will support a method of both modifying (consumer) and retrieving (producer) inventory.
Creating & “cooking” an order will also be supported, with each ingredient-service also responsible for preparing the ingredient.
- Advance Preparation
- Clone Repository
- Create/Push Own Branch
- Confirm Able to Start Solution Under Docker-Compose profile.
- Docker, Docker Compose, and Local Development
- Introduction to Consumers
- Concept
- Add the Inventory service to the solution
- Add endpoints to the Inventory Service to manage (C,U,D) inventory
- API Registration of the new Inventory Endpoints
- Introduction to Producers
- Concept
- Add endpoints to the Inventory Service to retrieve inventory
- Understanding Timeout
- Introduction to Sagas (Distributed Transactions)
- Concepts
- Instance
- States
- Events
- Adding the Order Service & State
- Add Order CRUD, Begin Preparation API endpoints
- Providing Saga Status
- Activities
- Discuss
- Add Activities
- Add Preparation Activities Per Ingredient
- Activity Compensation
- Discuss
- Demonstrate Compensation
- No inventory?
- Concepts
- Testing
- Export Service 3000 Overview