Class QueuingConfiguration.Builder
- java.lang.Object
-
- com.marcnuri.yakc.model.io.k8s.api.flowcontrol.v1alpha1.QueuingConfiguration.Builder
-
- Enclosing class:
- QueuingConfiguration
public static class QueuingConfiguration.Builder extends java.lang.Object
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description QueuingConfiguration
build()
QueuingConfiguration.Builder
handSize(java.lang.Number handSize)
`handSize` is a small positive number that configures the shuffle sharding of requests into queues.QueuingConfiguration.Builder
queueLengthLimit(java.lang.Number queueLengthLimit)
`queueLengthLimit` is the maximum number of requests allowed to be waiting in a given queue of this priority level at a time; excess requests are rejected.QueuingConfiguration.Builder
queues(java.lang.Number queues)
`queues` is the number of queues for this priority level.java.lang.String
toString()
-
-
-
Method Detail
-
handSize
public QueuingConfiguration.Builder handSize(java.lang.Number handSize)
`handSize` is a small positive number that configures the shuffle sharding of requests into queues. When enqueuing a request at this priority level the request's flow identifier (a string pair) is hashed and the hash value is used to shuffle the list of queues and deal a hand of the size specified here. The request is put into one of the shortest queues in that hand. `handSize` must be no larger than `queues`, and should be significantly smaller (so that a few heavy flows do not saturate most of the queues). See the user-facing documentation for more extensive guidance on setting this field. This field has a default value of 8.- Returns:
this
.
-
queueLengthLimit
public QueuingConfiguration.Builder queueLengthLimit(java.lang.Number queueLengthLimit)
`queueLengthLimit` is the maximum number of requests allowed to be waiting in a given queue of this priority level at a time; excess requests are rejected. This value must be positive. If not specified, it will be defaulted to 50.- Returns:
this
.
-
queues
public QueuingConfiguration.Builder queues(java.lang.Number queues)
`queues` is the number of queues for this priority level. The queues exist independently at each apiserver. The value must be positive. Setting it to 1 effectively precludes shufflesharding and thus makes the distinguisher method of associated flow schemas irrelevant. This field has a default value of 64.- Returns:
this
.
-
build
public QueuingConfiguration build()
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-