This document discusses microservices architecture as an alternative to monolithic architecture. It begins with an overview of monolithic architecture and its shortcomings such as difficulty scaling and maintaining code. Microservices aim to address these issues by breaking applications into independently deployable services. The document outlines microservices principles like organizing around business capabilities and decentralized data management. It also covers common microservices patterns and technologies like service discovery. Finally, it provides an example strategy for adopting microservices.