Introduction

Completed

Microservices are a popular architectural style for building cloud applications that are resilient, highly scalable, independently deployable, and able to evolve quickly. In this module, we explore the microservices architecture, and demonstrate how to decompose a monolithic application into a microservices architecture.

Fabrikam, Inc. recently launched a drone delivery service to complement their existing shipping business. The company manages and operates a fleet of drone aircraft. Businesses register with the service, and users can request a drone to pick up goods for delivery. When a customer schedules a pickup, a back-end system assigns a drone and notifies the user with an estimated delivery time. While the delivery is in progress, the customer can track the location of the drone with a continuously updated estimated time of arrival (ETA).

To support this new line of business, Fabrikam integrated new capabilities into the current system they use to manage their shipping business line. The current system is based on a monolithic architecture. When their drone business became popular, it began to strain the performance and development of this system. Fabrikam wants to continue to iterate on their system to quickly add new functionality and capabilities and adjust to their customers' demands. This desire is driving Fabrikam to evolve their application from a monolithic architecture to a microservices architecture.

Learning objectives

In this module, you will:

  • Identify the properties and benefits of a microservices application.
  • Decompose a monolithic application into a microservices architecture.

Prerequisites

  • Basic understanding of application and system architecture.
  • Basic knowledge of C#.