Skip to content

Commit

Permalink
Improve docs
Browse files Browse the repository at this point in the history
  • Loading branch information
martintmk committed Sep 15, 2023
1 parent 0e6735c commit 30d93d7
Show file tree
Hide file tree
Showing 3 changed files with 14 additions and 5 deletions.
8 changes: 4 additions & 4 deletions docs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ We are a member of the [.NET Foundation](https://www.dotnetfoundation.org/about)
|[Fallback](strategies/fallback.md)|Yes|Things will still fail - plan what you will do when that happens.| *Degrade gracefully* |Defines an alternative value to be returned (or action to be executed) on failure. |
|[Hedging](strategies/hedging.md)|Yes|Things can be slow sometimes, plan what you will do when that happens.| *Hedge your bets* | Executes parallel actions when things are slow and waits for the fastest one. |

Visit the [resilience strategies](strategies/readme.md) section to understand their structure and explore various configuration methods.
Visit the [resilience strategies](strategies/README.md) section to understand their structure and explore various configuration methods.

## Next steps

Expand All @@ -27,7 +27,7 @@ Visit the [getting started](getting-started.md) section and learn how to quickly

- [Introduction](readme.md): General information about the project and its goals.
- [Getting started](getting-started.md): A guide to help you get started with the project.
- Resilience strategies: A collection of strategies for improving the resilience of your system.
- [Resilience strategies](strategies/README.md): A collection of strategies for improving the resilience of your system.
- [Timeout](strategies/timeout.md): A strategy for setting a maximum time limit for a request.
- [Retry](strategies/retry.md): A strategy for retrying failed requests.
- [Rate limiter](strategies/rate-limiter.md): A strategy for limiting the rate of requests.
Expand All @@ -36,15 +36,15 @@ Visit the [getting started](getting-started.md) section and learn how to quickly
- [Circuit breaker](strategies/circuit-breaker.md): A strategy for breaking the circuit when a system is down.
- Resilience pipelines: Understanding the use of resilience pipelines.
- [Resilience pipeline registry](pipelines/resilience-pipeline-registry.md): Exploring the registry that stores resilience pipelines.
- vanced topics: A collection of advanced topics for further learning.
- Advanced topics: A collection of advanced topics for further learning.
- [Telemetry and monitoring](advanced/telemetry.md): Insights into telemetry generated by resilience pipelines and strategies.
- [Chaos engineering](advanced/simmy.md): Get to know chaos engineering via the project's capabilities.
- [Dependency injection](advanced/dependency-injection.md): How the project integrates with Dependency Injection.
- Community and resources: A collection of resources and community contributions.
- [Polly-Contrib projects and libraries](community/polly-contrib.md): Learn how to contribute to and extend the project ecosystem.
- [Libraries and contributions](community/libraries-and-contributions.md): Find out which libraries the project depends on and who contributes to its development.
- [Useful resources and links](community/resources.md): Browse through blogs, podcasts, courses, e-books, and other community resources.
- [API](api/readme.md): The API documentation for the project.
- [API](api/README.md): The API documentation for the project.

## Articles (previous Polly versions)

Expand Down
2 changes: 1 addition & 1 deletion docs/getting-started.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Getting started

To use Polly, you must provide a callback and execute it using [**resilience pipeline**](pipelines/readme.md). A resilience pipeline is a combination of one or more [**resilience strategies**](strategies/readme.md) such as retry, timeout, and rate limiter. Polly uses **builders** to integrate these strategies into a pipeline.
To use Polly, you must provide a callback and execute it using [**resilience pipeline**](pipelines/README.md). A resilience pipeline is a combination of one or more [**resilience strategies**](strategies/README.md) such as retry, timeout, and rate limiter. Polly uses **builders** to integrate these strategies into a pipeline.

To get started, first add the [Polly.Core](https://www.nuget.org/packages/Polly.Core/) package to your project by running the following command:

Expand Down
9 changes: 9 additions & 0 deletions docs/strategies/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,15 @@ Polly categorizes resilience strategies into two main groups:
- **Reactive**: These strategies handle specific exceptions that are thrown, or results that are returned, by the callbacks executed through the strategy.
- **Proactive**: Unlike reactive strategies, proactive strategies do not focus on handling errors by the callbacks might throw or return. They can make proactive decisions to cancel or reject the execution of callbacks (e.g., using a rate limiter or a timeout resilience strategy).

Polly supports the following built-in resilience strategies:

- [Timeout](timeout.md): A strategy for setting a maximum time limit for a request.
- [Retry](retry.md): A strategy for retrying failed requests.
- [Rate limiter](rate-limiter.md): A strategy for limiting the rate of requests.
- [Hedging](hedging.md): A strategy for hedging against long request times.
- [Fallback](fallback.md): A strategy for providing a fallback response in case of failure.
- [Circuit breaker](circuit-breaker.md): A strategy for breaking the circuit when a system is down.

## Usage

Extensions for adding resilience strategies to the builders are provided by each strategy. Depending on the type of strategy, these extensions may be available for both `ResiliencePipelineBuilder` and `ResiliencePipelineBuilder<T>` or just one of them. Proactive strategies like timeout or rate limiter are available for both types of builders, while specialized reactive strategies are only available for `ResiliencePipelineBuilder<T>`. Adding multiple resilience strategies is supported.
Expand Down

0 comments on commit 30d93d7

Please sign in to comment.