Book Image

Building Microservices with .NET Core

By : Gaurav Aroraa, Lalit Kale, Manish Kanwar
Book Image

Building Microservices with .NET Core

By: Gaurav Aroraa, Lalit Kale, Manish Kanwar

Overview of this book

Microservices is an architectural style that promotes the development of complex applications as a suite of small services based on business capabilities. This book will help you identify the appropriate service boundaries within the business. We'll start by looking at what microservices are, and what the main characteristics are. Moving forward, you will be introduced to real-life application scenarios, and after assessing the current issues, we will begin the journey of transforming this application by splitting it into a suite of microservices. You will identify the service boundaries, split the application into multiple microservices, and define the service contracts. You will find out how to configure, deploy, and monitor microservices, and configure scaling to allow the application to quickly adapt to increased demand in the future. With an introduction to the reactive microservices, you strategically gain further value to keep your code base simple, focusing on what is more important rather than the messy asynchronous calls.
Table of Contents (10 chapters)

Summary


Scalability is one of the critical advantages of pursuing the microservice architectural style. We saw the characteristics of microservice scalability. We discussed the Scale Cube model of scalability and how microservices can scale on the y-axis by functional decomposition of the system. Then we approached the scaling problem with the scaling infrastructure. In the infrastructure segment, we saw strong capability of Azure Cloud to scale, utilizing the Azure scale sets and container orchestration solutions, such as Docker swarm, DC/OS, and kubernates.

In later stages of the chapter, we focused on scaling with a service design and discussed how our data model should be designed; we also discussed considerations, such as having a split CQRS style model, while designing the data model for high scalability. We also briefly touched on caching, especially distributed caching, and how it improves the throughput of the system. In the last section, to make our microservices highly scalable...