Skip to content

Commit 6986b81

Browse files
authored
pull base content,head:MicrosoftDocs:main,into:wwlpublishsync
2 parents cdc71aa + bd62256 commit 6986b81

File tree

114 files changed

+473
-476
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

114 files changed

+473
-476
lines changed

learn-pr/aspnetcore/microservices-resiliency-aspnet-core/1-introduction.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ metadata:
55
description: Learn how to add fault tolerance to your cloud-native ASP.NET Core microservice app, with minimal impact on the user.
66
author: codemillmatt
77
ms.author: masoucou
8-
ms.date: 11/06/2023
8+
ms.date: 05/09/2025
99
ms.topic: unit
1010
title: Introduction
1111
durationInMinutes: 1

learn-pr/aspnetcore/microservices-resiliency-aspnet-core/2-application-infrastructure-resiliency.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ metadata:
55
description: Learn about approaches to resiliency for cloud-native microservices apps.
66
author: codemillmatt
77
ms.author: masoucou
8-
ms.date: 11/06/2023
8+
ms.date: 05/09/2025
99
ms.topic: unit
1010
title: Application and infrastructure resiliency
1111
durationInMinutes: 5

learn-pr/aspnetcore/microservices-resiliency-aspnet-core/3-implement-application-resiliency.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ metadata:
55
description: Learn how to use .NET resiliency with cloud-native microservices apps.
66
author: codemillmatt
77
ms.author: masoucou
8-
ms.date: 11/06/2023
8+
ms.date: 05/09/2025
99
ms.topic: unit
1010
ms.custom: devx-track-dotnet
1111
title: Implement application resiliency

learn-pr/aspnetcore/microservices-resiliency-aspnet-core/4-exercise-implement-resiliency.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ metadata:
55
description: Write code to add resiliency to an existing cloud-native microservices app.
66
author: codemillmatt
77
ms.author: masoucou
8-
ms.date: 11/06/2023
8+
ms.date: 05/09/2025
99
ms.topic: unit
1010
title: Exercise - Implement application resiliency
1111
durationInMinutes: 9

learn-pr/aspnetcore/microservices-resiliency-aspnet-core/5-implement-infrastructure-resiliency.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ metadata:
55
description: Learn how to use Linkerd to configure infrastructure-based resiliency in your microservices app.
66
author: codemillmatt
77
ms.author: masoucou
8-
ms.date: 11/06/2023
8+
ms.date: 05/09/2025
99
ms.topic: unit
1010
ms.custom:
1111
- devx-track-dotnet

learn-pr/aspnetcore/microservices-resiliency-aspnet-core/6-exercise-implement-infrastructure-resiliency.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ metadata:
55
description: Use Linkerd to configure infrastructure-based resiliency in your microservices app.
66
author: codemillmatt
77
ms.author: masoucou
8-
ms.date: 11/06/2023
8+
ms.date: 05/09/2025
99
ms.topic: unit
1010
title: Exercise - Implement infrastructure resiliency with Kubernetes
1111
durationInMinutes: 11

learn-pr/aspnetcore/microservices-resiliency-aspnet-core/7-knowledge-check.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ metadata:
55
description: Test your knowledge of what you learned in this tutorial about resiliency.
66
author: codemillmatt
77
ms.author: masoucou
8-
ms.date: 11/06/2023
8+
ms.date: 05/09/2025
99
ms.topic: unit
1010
title: Module assessment
1111
durationInMinutes: 7

learn-pr/aspnetcore/microservices-resiliency-aspnet-core/8-summary.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ metadata:
55
description: Review what you learned in the tutorial, and deprovision the Azure resources that you used.
66
author: codemillmatt
77
ms.author: masoucou
8-
ms.date: 11/06/2023
8+
ms.date: 05/09/2025
99
ms.topic: unit
1010
ms.custom:
1111
- devx-track-dotnet

learn-pr/aspnetcore/microservices-resiliency-aspnet-core/includes/1-introduction.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ You'll modify the app to include some code-based resiliency handling policies in
1313

1414
## Learning objectives
1515

16-
In this module, you will:
16+
In this module, you'll:
1717

1818
* Understand foundational resiliency concepts.
1919
* Observe the behavior of a microservice that has no resiliency strategy.
@@ -25,4 +25,4 @@ In this module, you will:
2525
* Familiarity with C# and .NET development at the beginner level.
2626
* Familiarity with RESTful service concepts.
2727
* Conceptual knowledge of containers and AKS at the intermediate level.
28-
* Ability to run development containers GitHub Codespaces or in Visual Studio Code.
28+
* Ability to run development containers GitHub Codespaces or in Visual Studio Code.

learn-pr/aspnetcore/microservices-resiliency-aspnet-core/includes/2-application-infrastructure-resiliency.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ Because microservice environments can be volatile, design your apps to expect an
66

77
In designing resilient applications, you often have to choose between failing fast and graceful degradation. Failing fast means the application will immediately throw an error or exception when something goes wrong, rather than try to recover or work around the problem. This allows issues to be identified and fixed quickly. Graceful degradation means the application will try to keep operating in a limited capacity even when some component fails.
88

9-
In cloud-native applications it's important for services to handle failures gracefully rather than fail fast. Since microservices are decentralized and independently deployable, partial failures are expected. Failing fast would allow a failure in one service to quickly take down dependent services, which reduce overall system resiliency. Instead, microservices should be coded to anticipate and tolerate both internal and external service failures. This graceful degradation allows the overall system to continue operating even if some services are disrupted. Critical user-facing functions can be sustained, avoiding a complete outage. Graceful failure also allows disturbed services time to recover or self-heal before impacting the rest of the system. So for microservices-based applications, graceful degradation better aligns with resiliency best practices like fault isolation and rapid recovery. It prevents local incidents from cascading across the system.
9+
In cloud-native applications, it's important for services to handle failures gracefully rather than fail fast. Since microservices are decentralized and independently deployable, partial failures are expected. Failing fast would allow a failure in one service to quickly take down dependent services, which reduce overall system resiliency. Instead, microservices should be coded to anticipate and tolerate both internal and external service failures. This graceful degradation allows the overall system to continue operating even if some services are disrupted. Critical user-facing functions can be sustained, avoiding a complete outage. Graceful failure also allows disturbed services time to recover or self-heal before impacting the rest of the system. So for microservices-based applications, graceful degradation better aligns with resiliency best practices like fault isolation and rapid recovery. It prevents local incidents from cascading across the system.
1010

1111
There are two fundamental approaches to support a graceful degradation with resiliency: application and infrastructure. Each approach has benefits and drawbacks. Both approaches can be appropriate depending on the situation. This module explains how to implement both *code-based* and *infrastructure-based* resiliency.
1212

@@ -28,11 +28,11 @@ A *Circuit Breaker* strategy gives a target service a break after a repeated num
2828

2929
### Infrastructure-based resiliency
3030

31-
To implement infrastructure-based resiliency, you can use a *service mesh*. Aside from resiliency without changing code, a service mesh provides traffic management, policy, security, strong identity, and observability. Your app is decoupled from these operational capabilities, which are moved to the infrastructure layer.
31+
To implement infrastructure-based resiliency, you can use a *service mesh*. Aside from resiliency without changing code, a service mesh provides traffic management, policy, security, strong identity, and observability. Your app is decoupled from these operational capabilities, which are moved to the infrastructure layer.
3232

3333
#### Comparison to code-based approaches
3434

35-
An infrastructure-based resiliency approach can use a metrics-based view that allows it to adapt dynamically to cluster conditions in real time. This approach adds another dimension to managing the cluster, but doesn't add any code.
35+
An infrastructure-based resiliency approach can use a metrics-based view that allows it to adapt dynamically to cluster conditions in real time. This approach adds another dimension to managing the cluster but doesn't add any code.
3636

3737
With a code-based approach you:
3838

@@ -43,4 +43,4 @@ There's no reasonable way to respond to an infrastructure failure in your app's
4343

4444
In contrast, infrastructure-based approaches are unaware of app internals. For example, complex database transactions are invisible to service meshes. Such transactions can only be protected from failure with a code based approach.
4545

46-
In upcoming units, you'll implement resilience for a microservice based app using .NET HTTP resiliency in code and a Linkerd service mesh.
46+
In upcoming units, you'll implement resilience for a microservice based app using .NET HTTP resiliency in code and a Linkerd service mesh.

0 commit comments

Comments
 (0)