Identity modes
Tag order has no effect on identity. An action with no tags uses the destination’s untagged lane.
Performance
Each lane can drive approximately24 messages per second, or 1440 messages per minute. To increase throughput, use more lanes. The recommended pattern is to partition by Users/Customers/Teams, which ever your platform uses to represent distinctive entities.
Partition behavior
Missing values
Actions with a missing or empty partition value use the destination’s shared untagged lane regardless of the other tags. Choose a partition tag that is present on every action that requires isolation.Other tags
Tags outside the partition remain attached to the action and available to rules, metrics, and observability. The partition value alone determines the lane and its limits.Tag sources
Tags can come from:- The
tagsfield sent to HTTP ingress. tag.<key>query parameters on HTTP ingress.- Source attributes configured to become tags.
- An Assign Tags rule.
Limits and advice
Each lane carries the running and unsettled occupancy described in Admission control. Admission applies the lane’s current limits and any tighter quota from its capacity pool. Lane advice sets temporary running or unsettled caps. Advice can provide a lifetime in seconds or an explicit expiry; a lifetime defaults to 300 seconds. A cap holds for the shorter of its lifetime and five minutes from the write. A running cap of0 pauses admission for the full lifetime, until the advice expires or is deleted.
Advice with the exact partition tag applies to one lane. Advice submitted without tags can apply across the destination’s partitioned lanes.
Cardinality
A destination can hold at most 50,000 lanes. Ingress will accept the work, but raise the errorTAG_CARDINALITY_EXCEEDED. New tags won’t be recorded, and will default to the default destination.
Request identifiers, timestamps, and other unbounded values should stay outside lane identity. A partition tag can keep descriptive tags on the action while bounding lane identity to the selected values.
Arklow can always raise this limit on request, and exists to prevent unbounded lane generation.
Admission control
Waiting, running and unsettled limits, pacing, and caps.
Capacity pools
Shared supply, allocation, and budgets across lanes.
API reference
Set temporary running and unsettled advice.