#585 #2338 Quality of Service global configuration#2339
Merged
Conversation
Collaborator
…re accurately and achieve more stable behavior
Member
Author
|
@RaynaldM Are you interested in quality of this PR? This is Polly provider which is used by your dev team. |
RaynaldM
approved these changes
Dec 1, 2025
Co-authored-by: Raynald Messié <redbird_project@yahoo.fr>
Co-authored-by: Raynald Messié <redbird_project@yahoo.fr>
Collaborator
|
I'm going to have a look at this tomorrow, cheers! |
Member
Author
Development Complete ✅
You might be late, as I am currently writing the docs and the status is "Dev Complete". |
raman-m
commented
Dec 4, 2025
Member
Author
There was a problem hiding this comment.
Ready for delivery ✅
- Code review ✔️
- Unit testing ✔️
- Acceptance testing ✔️ ✔️
- Updated docs ✔️ ✔️ → html docs in develop → Quality of Service
raman-m
added a commit
that referenced
this pull request
Dec 9, 2025
…ronment (#2342) * Fixing ShouldHighlyLoadOnUnstableKubeProvider_WithRoundRobinLoadBalancing for PollKube: PollingInterval workaround * Fixing PollyQoSTests: IsCiCd helper and wait more for circuit closing * Fixing Should_open_circuit_breaker_for_DefaultBreakDuration * Fixing ShouldApplyGlobalQosOptions_ForAllDynamicRoutes_WithGroupedOpts * Improve code coverage * Update develop workflow: job runs on linux+windows+macos
raman-m
added a commit
that referenced
this pull request
Dec 9, 2025
…ronment (#2342) * Fixing ShouldHighlyLoadOnUnstableKubeProvider_WithRoundRobinLoadBalancing for PollKube: PollingInterval workaround * Fixing PollyQoSTests: IsCiCd helper and wait more for circuit closing * Fixing Should_open_circuit_breaker_for_DefaultBreakDuration * Fixing ShouldApplyGlobalQosOptions_ForAllDynamicRoutes_WithGroupedOpts * Improve code coverage * Update develop workflow: job runs on linux+windows+macos
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #2338
Ocelot now fully supports global QoS options for both static and dynamic routing, with the ability to override options at the route level when needed. In the past, only route-level QoS options were available for static routing, while global QoS was limited to dynamic routing. The current challenge is to unify everything into a single
QoSOptionsmodel as part of theDownstreamRoutebusiness object.Proposed Changes
newqualifier was removed, which previously hid base properties from the old inheritedFileGlobalDynamicRoutingclass, to address issues with polymorphic JSON (de)serialization of theFileGlobalConfigurationproperties which types inherit theIRouteGroupinterface, so calledFileGlobal*classes.DurationOfBreak(nowBreakDuration),ExceptionsAllowedBeforeBreaking(nowMinimumThroughput), andTimeoutValue(nowTimeout). The original names were suggested by a Chinese developer in PR Circuit breaker pattern #27. So, now the QoS models align with the Polly schema.Ocelot.UnitTests.QualityOfServicenamespace.