Microservices are becoming the default mode of developing and deploying applications at scale. Microservices architecture makes it easier to scale an application to a large system and is a great enabler for continuous integration and delivery. The microservices architecture allows independent scaling, independent releases and deployments, and independent development so that each service has its own codebase. In this course, we will cover the best practices on how to develop and deploy microservices. You will learn topics such as different microservice architecture patterns, independent scaling, resiliency, service replication, service registration, and discovery. By the end of this course, you should be able to design and build an application using a microservice architecture.
Overview
Syllabus
- Introduction to Microservices
- Using microservices is both a technical and business decision. In this lesson you will learn about the use cases that caused microservices to become popular.
- Microservices Design Principles and Best Practices
- When applied correctly, microservice architecture can deliver great business value. In this lesson, we will compare microservices and monoliths and discuss best practices for refactoring.
- Containers Using Docker
- Applications are often deployed in containers. In this lesson we'll learn why we use containers and how to use Docker to build our applications to be deployed as containers
- Automating the Application Development Lifecycle
- In this lesson, we'll learn about why the industry embraces Continuous Integration and Continuous Deployment and how Docker helps streamline the process
- Orchestration with Kubernetes
- Kubernetes is a powerful tool that is often used to deploy containers. In this lesson we’ll learn about why we would consider using Kubernetes and to deploy our applications
- Best Practices/Design Patterns for Kubernetes in Production
- In this lesson we'll learn some of the best practices for running your application in Kubernetes including logging, scale, and security
- Refactor Monolith to Microservices and Deploy
- In this project, you will take an existing application named Udagram and refactor it into a microservice architecture with lean services and deploy it using Kubernetes.
Taught by
nd064 Justin Lee