Know the fundamentals of creating and deploying microservices using .NET 6 and gain insight from prescriptive guidance in this book on the when and why to incorporate them.
The microservices architecture is a way of distributing process workloads to independent applications. This distribution allows for the independent applications to scale and evolve separately. It also enables developers to dismantle large applications into smaller, easier-to-maintain, scalable parts. While the return is valuable and the concept straightforward, applying it to an application is far more complicated. Where do you start? How do you find the optimal dividing point for your app, and strategically, how should your app be parceled out into separate services?
Pro Microservices in .NET 6 will introduce you to all that and more. The authors get you started with an overview of microservices, .NET 6, event storming, and domain-driven design. You will use that foundational information to build a reference application throughout the book. From there, you will create your first microservice using .NET 6 that you can deploy into Docker and Azure Kubernetes Service. You will also learn about communication styles, decentralizing data, and testing microservices. Finally, you will learn about logging, metrics, tracing, and use that information for debugging.
What You Will Learn
- Build a foundation of basic microservices architecture design
- Follow an example of using event storming and domain-driven design to understand the monolithic application modified for microservices
- Understand, via detailed commands, how Docker is used to containerize applications
- Get an overview of creating microservices from a monolithic application
- Call microservices using RPC and messaging communication styles with MassTransit
- Comprehend decentralizing data and handling distributed transactions
- Use Azure Kubernetes Service to host and scale your microservices
- Know the methods to make your microservices more robust
- Discover testing techniques for RPC and messaging communication styles
- Apply the applications you build for actual use
- Practice cross-cutting concerns such as logging, metrics, and tracing