In this chapter, we will cover best practices to design scalable, resilient, and highly available applications based on proven practices. We will go through a set of recommended architectures for Azure. These days, instead of using monolithic designs, applications are decomposed into smaller fragments known as microservices. These trends also bring new challenges, such as the following:
The application state is distributed.
Operations are done in parallel and asynchronously.
Deployments must be automated.