字段 | 说明 |
NAME | FlowSchema 名称。 |
PRIORITYLEVEL | 与当前 FlowSchema 绑定的优先级队列(PriorityLevelConfiguration)。 |
MATCHINGPRECEDENCE | 匹配优先级,数字越低,优先级越高。 |
DISTINGUISHERMETHOD | 队列细分方式,包括:
|
AGE | 该 FlowSchema 已存在的时长。 |
MISSINGPL | 对应的 PriorityLevelConfiguration 是否缺失,包括:
|
字段 | 说明 |
NAME | 优先级队列(PriorityLevelConfiguration)名称。 |
TYPE | 资源类型,包括:
|
NOMINALCONCURRENCYSHARES | 并发处理份额,决定该队列能分到多少并发席位。该值为相对权重,不是绝对值,表示此优先级在所有 Limited 类型优先级中的相对配额,数值越大,通常可分配到的并发席位越多,但它并不等同于固定的绝对并发上限。 |
QUEUES | 队列数量,支持按 ByUser、ByNamespace 打散到多个子队列。 |
HANDSIZE | 洗牌手数,请求进来时随机挑选 N 个子队列,选最短的那个入队。该值越大,负载均衡越精准。 |
QUEUELENGTHLIMIT | 每个子队列的最大排队长度,超过则直接返回429 Too Many Requests。 |
AGE | 该 PriorityLevelConfiguration 已存在的时长。 |
字段 | 说明 |
基础字段 | |
name | 优先级队列名称,FlowSchema 中通过此名称引用。 |
apf.kubernetes.io/autoupdate-spec | APF 自动调谐开关,配置为false后,系统会跳过对该资源的自动调谐。避免自定义配置被系统自动调谐回默认值。 |
spec 字段 | |
type | 资源类型,包括:
|
limited.nominalConcurrencyShares | 并发处理份额,决定该队列能分到多少并发席位。该值为相对权重,不是绝对值,表示此优先级队列在所有 Limited 类型优先级队列中的相对配额,数值越大,通常可分配到的并发席位越多,但它并不等同于固定的绝对并发上限。 说明
|
limited.lendablePercent | 席位可出借比例,表示该队列的并发席位中,有多少百分比的席位,可以在本队列空闲时借给其他队列。该配置为 APF 的弹性借用机制,让空闲队列的资源不被浪费。
|
limitResponse.type | 超出并发上限的请求的处理方式。包括:
|
queuing.queues | 子队列数量,本例中为 128。系统会按照 FlowSchema 中定义的DistinguisherMethod进行队列细分,防止某个用户或命名空间的大量请求阻塞整个队列。 |
queuing.handSize | 洗牌手数,本例中为 6。表示系统从所有子队列(本示例中为 128 个)中随机挑选 6 个,然后选择其中最短的那个入队。 |
queuing.queueLengthLimit | 单个子队列的最大排队长度,本例中为 50。表示当某个子队列中已有 50 个请求在等待时,新来的请求将直接被拒绝,即返回429 Too Many Requests,不再继续排队。 |
字段 | 说明 |
基础字段 | |
name | FlowSchema 资源名称,便于识别和管理。 |
spec 字段 | |
matchingPrecedence | 匹配优先级,数字越低,优先级越高。 |
distinguisherMethod.type | 队列细分方式,包括:
|
priorityLevelConfiguration.name | 绑定的优先级队列。在本例中,命中此 FlowSchema 的请求,会被放入workload-high这个优先级队列中处理。 |
rule 匹配规则 | |
subjects | 请求发起方,在本例中的取值含义:
|
resourceRules | 请求操作范围,在本例中的取值含义:
|