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.
Describe what this PR does / why we need it
This PR provides an implement of parameter degrade.
Does this pull request fix one issue?
Fixes #2412
Describe how you did it
For one resource, we have different outers to call, and the method has params the classify the outers.
For example,
we have one method
public void callOut(String outer)
The values of outer may be A, B and others.
So we got the param degrade rule like this,
{ "resource":"paramDegrade", "count":1, "paramFlowItemList":[ { "object":"A", "count":999, "classType":"java.util.String" }, { "object":"B", "count":1888, "classType":"java.util.String" } ] }
The requests with param A got an A CircuirBreaker.
The requests with param B got an B CircuirBreaker.
The requests with param!=(A or B) got an other CircuirBreaker.
If the outer service A failed, the requests with param A will be degraded, but the other requests will call normally.
Describe how to verify it
Use the module sentinel-demo-parameter-degrade to verify.
Special notes for reviews
Nothing.