Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kdcllc/bet.extensions.resilience
DotNetCore Resilience Framework for Kubernetes Cluster
https://github.com/kdcllc/bet.extensions.resilience
docker-container docker-images dotnet dotnet-core dotnet-worker-service dotnetcore httpclient httpclientfactory httpfactory kdcllc kubernetes kubernetes-cluster policy-shapes polly polly-policies polly-resilience resilience resiliency resilient
Last synced: 6 days ago
JSON representation
DotNetCore Resilience Framework for Kubernetes Cluster
- Host: GitHub
- URL: https://github.com/kdcllc/bet.extensions.resilience
- Owner: kdcllc
- License: mit
- Created: 2019-05-07T13:00:59.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2023-01-19T00:54:51.000Z (almost 2 years ago)
- Last Synced: 2024-05-01T14:34:24.568Z (7 months ago)
- Topics: docker-container, docker-images, dotnet, dotnet-core, dotnet-worker-service, dotnetcore, httpclient, httpclientfactory, httpfactory, kdcllc, kubernetes, kubernetes-cluster, policy-shapes, polly, polly-policies, polly-resilience, resilience, resiliency, resilient
- Language: C#
- Homepage:
- Size: 2.64 MB
- Stars: 6
- Watchers: 3
- Forks: 2
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
# Bet.Extensions.Resilience
[![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg?style=flat-square)](https://raw.githubusercontent.com/kdcllc/Bet.Extensions.Resilience/master/LICENSE)
[![Build status](https://ci.appveyor.com/api/projects/status/tmqs7xbq1aqee3md/branch/master?svg=true)](https://ci.appveyor.com/project/kdcllc/bet-extensions-resilience/branch/master)
[![NuGet](https://img.shields.io/nuget/v/Bet.Extensions.Resilience.Abstractions.svg)](https://www.nuget.org/packages?q=Bet.Extensions.Resilience.Abstractions)
![Nuget](https://img.shields.io/nuget/dt/Bet.Extensions.Resilience.Abstractions)
[![feedz.io](https://img.shields.io/badge/endpoint.svg?url=https://f.feedz.io/kdcllc/bet-extensions-resilience/shield/Bet.Extensions.Resilience.Abstractions/latest)](https://f.feedz.io/kdcllc/bet-extensions-resilience/packages/Bet.Extensions.Resilience.Abstractions/latest/download)> The second letter in the Hebrew alphabet is the ב bet/beit. Its meaning is "house". In the ancient pictographic Hebrew it was a symbol resembling a tent on a landscape.
*Note: Pre-release packages are distributed via [feedz.io](https://f.feedz.io/kdcllc/bet-extensions-resilience/nuget/index.json).*
## Summary
This project contains a number of libraries to satisfy the needs of Microservices development in Kubernetes environment.
The bedrock for this project's Resilience is based on [`Polly`](https://github.com/App-vNext/Polly) policy libraries.
This library provides with a configurational Resilience framework for [HttpClientFactory](https://docs.microsoft.com/en-us/dotnet/architecture/microservices/implement-resilient-applications/use-httpclientfactory-to-implement-resilient-http-requests).
[![buymeacoffee](https://www.buymeacoffee.com/assets/img/custom_images/orange_img.png)](https://www.buymeacoffee.com/vyve0og)
## Give a Star! :star:
If you like or are using this project to learn or start your solution, please give it a star. Thanks!
## Resilience Libraries
- [`Bet.Extensions.Resilience.Abstractions`](./src/Bet.Extensions.Resilience.Abstractions/) - the foundation library for Resilience policies.
- [`Bet.Extensions.Resilience.Http`](./src/Bet.Extensions.Resilience.Http/) - provides with base Policy Shapes for `HttpClient`.
- [`Bet.Extensions.Resilience.Data.SqlClient`](./src/Bet.Extensions.Resilience.Data.SqlClient/) - provides with base SQL specific Policy Shapes.## Resilience Hosting Libraries
- [`Bet.Extensions.Hosting.Resilience`](./src/Bet.Extensions.Hosting.Resilience/) - Registering for Generic Host Policies with DI and `IPolicyRegistry`
- [`Bet.AspNetCore.Hosting.Resilience`](./src/Bet.AspNetCore.Hosting.Resilience/) - Registering for AspNetCore Host Policies with DI and `IPolicyRegistry`## Http Delegating Message Handlers
- [`Bet.Extensions.Http.MessageHandlers.Abstractions`](./src/Bet.Extensions.Http.MessageHandlers.Abstractions/)
- [`Bet.Extensions.Http.MessageHandlers`](./src/Bet.Extensions.Http.MessageHandlers/) - Timeout, Authorization## Sample Applications
- [`Bet.Extensions.Resilience.WebApp.Sample`](./src/Bet.Extensions.Resilience.WebApp.Sample/)
- [`Bet.Extensions.Resilience.Worker.Sample`](./src/Bet.Extensions.Resilience.Worker.Sample/)## Development Environment
This project supports:
- VSCode Remote Development in Dev Docker Container (Make sure that debugging of the app is used to run the application.)
- Visual Studio.NET Docker
To get an ip address of the running docker container:
```bash
hostname -I
```## Docker Images
This repo is utilizing [King David Consulting LLC Docker Images](https://hub.docker.com/u/kdcllc):
- [kdcllc/dotnet-sdk:3.1](https://hub.docker.com/r/kdcllc/dotnet-sdk-vscode): - the docker image for templated `DotNetCore` build of the sample web application.
- [kdcllc/dotnet-sdk-vscode:3.1](https://hub.docker.com/r/kdcllc/dotnet-sdk/tags): the docker image for the Visual Studio Code In container development.
- [Docker Github repo](https://github.com/kdcllc/docker/blob/master/dotnet/dotnet-docker.md)
## Reference
### HttpClient Diagnostics events order
System.Net.Http.HttpRequestOut.Start
System.Net.Http.Request
System.Net.Http.HttpRequestOut.Stop
System.Net.Http.Response