Udacity Logo
Log InSign Up

Monolith to Microservices at Scale

Course

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.

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.

3 weeks

Real-world Projects

Completion Certificate

Last Updated May 4, 2023

Prerequisites:

No experience required

Course Lessons

Lesson 1

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.

Lesson 2

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.

Lesson 3

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

Lesson 4

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

Lesson 5

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

Lesson 6

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

Lesson 7 • Project

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 The Best

Photo of Justin Lee

Justin Lee

Data Platform Engineer

Justin Lee designs and builds modern scalable systems and consults for Fortune 500 companies. He currently works in the Silicon Valley as a platform engineer to enable users' data workflows. He has a BS in Computer Science from UCLA and is often mentoring and teaching developers through Codementor.

Taught By The Best

Photo of Justin Lee

Justin Lee

Data Platform Engineer

Justin Lee designs and builds modern scalable systems and consults for Fortune 500 companies. He currently works in the Silicon Valley as a platform engineer to enable users' data workflows. He has a BS in Computer Science from UCLA and is often mentoring and teaching developers through Codementor.

Get Started Today

Monolith to Microservices at Scale