Implementing Event-driven Microservices Architecture in .NET 7: Develop event-based distributed apps that can scale with ever-changing business demand

Garverick, Joshua, Dean McIver, Omar

  • 出版商: Packt Publishing
  • 出版日期: 2023-03-17
  • 售價: $1,840
  • 貴賓價: 9.5$1,748
  • 語言: 英文
  • 頁數: 326
  • 裝訂: Quality Paper - also called trade paper
  • ISBN: 1803232781
  • ISBN-13: 9781803232782
  • 相關分類: .NETMicroservices 微服務SOA
  • 海外代購書籍(需單獨結帳)

相關主題

商品描述

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, will enable developers to hone skills that will drive 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 further flesh out an application that enables those goals and drivers.
• Through the architectural design process, identify areas to enhance development and ensure operational support.

Book Description

The book will guide you through various hands-on practical examples for implementing event-driven microservices architecture using C#11 and .Net7. This book 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, as well as 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 local environment setup, containerization of code, testing, deployment, and observability of microservices utilizing an EDA approach.

The third section examines the needs for scalability and service resilience within the application, along with implementation details related to elastic and autoscale components and how proper telemetry helps to automatically drive scaling events. The topic of observability is revisited using examples of service discovery and microservice inventories.

By the end of the book, you will 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

• Learn about .NET 7 and how it enables the development of applications using EDA
• Understand messaging protocols, 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

Who This Book Is For

This book will help .NET Developers and architects looking to leverage or pivot to microservices while utilizing a domain-driven event model

商品描述(中文翻譯)

實施現代設計模式,利用面向領域的數據來實現數據相依應用的彈性和可擴展性。

主要特點:

- 學習事件驅動架構的原則,結合可靠的設計模式,使開發人員能夠提升技能,了解分佈式系統的知識,並建立專業成長的基礎。
- 理解如何將業務目標轉化為領域模型,以進一步完善實現這些目標的應用程序。
- 通過架構設計過程,識別開發增強和確保運營支持的領域。

書籍描述:

本書將指導您通過使用C#11和.Net7實現事件驅動的微服務架構的各種實踐示例。本書分為三個不同的部分,每個部分都專注於實現的不同方面。

第一部分將介紹.NET 7的新功能,這些功能將使使用EDA模式開發應用程序更加容易,以及貫穿整本書的示例應用程序以及如何在.NET 7中實現領域驅動設計(DDD)的核心原則。

第二部分將回顧本地環境設置、代碼容器化、測試、部署和使用EDA方法觀察微服務的各個組件。

第三部分探討了應用程序中的可擴展性和服務的彈性需求,以及與彈性和自動縮放組件相關的實現細節,以及如何通過適當的遙測來自動驅動縮放事件。使用服務發現和微服務庫的示例重新討論了可觀察性的主題。

通過閱讀本書,您將能夠識別和分類領域、事件和有界上下文,以設計和開發具有彈性的微服務架構。

您將學到什麼:

- 了解.NET 7以及它如何實現使用EDA開發應用程序。
- 理解消息協議、生產者/消費者模式以及如何在.NET 7中實現它們。
- 測試和部署使用EDA原則設計並使用.NET 7編寫的應用程序。
- 考慮微服務的擴展性和彈性。
- 在平台和應用程序級別收集和學習遙測數據。

本書適合對微服務感興趣的.NET開發人員和架構師,並希望利用或轉向使用面向領域的事件模型的人士。

目錄大綱

1. The Sample Application
2. The Producer-Consumer Pattern
3. Message Brokers
4. Domain Model and Asynchronous Design
5. Containerization and Local Environment Setup
6. Localized Testing and Debugging of Microservices
7. Microservice Observability
8. CI/CD Pipelines and Integrated Testing
9. Fault Injection and Chaos Testing
10. Modern Design Patterns for Scalability
11. Minimizing Data Loss
12. Service and Application Resiliency
13. Telemetry Capture and Integration
14. Observability Revisited

目錄大綱(中文翻譯)

1. 範例應用程式
2. 生產者-消費者模式
3. 訊息代理
4. 領域模型和非同步設計
5. 容器化和本地環境設定
6. 微服務的本地化測試和除錯
7. 微服務的可觀察性
8. CI/CD流程和整合測試
9. 故障注入和混沌測試
10. 擴展性的現代設計模式
11. 最小化資料損失
12. 服務和應用程式的彈性
13. 遙測資料的捕獲和整合
14. 可觀察性的再探討