Implement modern design patterns that leverage domain-driven data, to achieve resiliency and scalability for data-dependent applications Key Features Learn the tenets of event-driven architecture, coupled with reliable design patterns to enhance your knowledge of distributed systems and build a foundation for professional growth Understand how to translate business goals and drivers into a domain model that can be used to develop an app that enables those goals and drivers Identify areas to enhance development and ensure operational support through the architectural design process Book DescriptionThis book will guide you through various hands-on practical examples for implementing event-driven microservices architecture using C# 11 and .NET 7. It has been divided into three distinct sections, each focusing on different aspects of this implementation. The first section will cover the new features of .NET 7 that will make developing applications using EDA patterns easier, the sample application that will be used throughout the book, and how the core tenets of domain-driven design (DDD) are implemented in .NET 7. The second section will review the various components of a local environment setup, the containerization of code, testing, deployment, and the observability of microservices using an EDA approach. The third section will guide you through the need for scalability and service resilience within the application, along with implementation details related to elastic and autoscale components. You'll also cover how proper telemetry helps to automatically drive scaling events. In addition, the topic of observability is revisited using examples of service discovery and microservice inventories. By the end of this book, you'll be able to identify and catalog domains, events, and bounded contexts to be used for the design and development of a resilient microservices architecture.What you will learn Explore .NET 7 and how it enables the development of applications using EDA Understand messaging protocols and producer/consumer patterns and how to implement them in .NET 7 Test and deploy applications written in .NET 7 and designed using EDA principles Account for scaling and resiliency in microservices Collect and learn from telemetry at the platform and application level Get to grips with the testing and deployment of microservices Who this book is forThis book will help .NET developers and architects looking to leverage or pivot to microservices while using a domain-driven event model.
About the AuthorJoshua Garverick is a Microsoft MVP (Most Valuable Professional) and a seasoned IT professional with nearly two decades of enterprise experience in several large industries (finance, healthcare, transportation, and logistics). He specializes in Azure application and platform architecture and is currently involved with application modernization and digital transformation projects. Josh is a Microsoft Certified Solution Expert (MCSE) in Cloud Platform and Infrastructure, a certified Microsoft Azure Solution Architect Expert, and a Microsoft DevOps Engineer Expert. Omar Dean McIver is an MCT (Microsoft Certified Trainer) and has experience of more than 12 years developing enterprise grade applications in Oil & Gas and other regulated industries. He specialises in cloud-native development and application modernization. He is a certified Azure Solution Architect and FinOps Practitioner. His Udemy course on Practical OAuth, OpenID, and JWT in C# .NET Core has a rating of 4.5-stars. Omar continues to stay at the forefront of cloud-native development with a keen focus on cost optimization, performance tuning, and highly scalable microservice architectures.
Book InformationISBN 9781803232782
Author Joshua GarverickFormat Paperback
Page Count 326
Imprint Packt Publishing LimitedPublisher Packt Publishing Limited