Skip to content

[Flow Control] Expand Flow Control capacity limits schema (resource.Quantity, maxRequests) #2486

@LukeAVanDrie

Description

@LukeAVanDrie

What would you like to be added:

We should expand the Flow Control configuration schema within the EndpointPickerConfig to provide a more robust and Kubernetes-native UX for defining capacity constraints.

Specifically:

  1. Change maxBytes to resource.Quantity: Update the schema to allow standard k8s byte parsing (e.g., 1Gi, 500M) instead of raw int64 bytes.
  2. Nest Limits: Group capacity boundaries into a reusable CapacityLimits struct embedded in the policy definitions.
  3. Add maxRequests limit: Add a logical maxRequests to the CapacityLimits struct, acting as an OR shed condition alongside maxBytes.

(Note: Upgrading this schema should be done in tandem with the split default priority bands proposal tracked in #2452)

Example target schema:

flowControl:
  priorityBands:
    - priority: 100
      limits:
        maxBytes: 1Gi      
        maxRequests: 5000

Metadata

Metadata

Assignees

Labels

good first issueDenotes an issue ready for a new contributor, according to the "help wanted" guidelines.help wantedDenotes an issue that needs help from a contributor. Must meet "help wanted" guidelines.needs-triageIndicates an issue or PR lacks a `triage/foo` label and requires one.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions