When you send work through Arklow, it still runs on your own services and infrastructure.
What does Arklow help with?
Arklow helps manage these common infrastructure challenges:- Product instability caused by constantly changing customer usage habits.
- Overprovisioning, or underprovisioning of infrastructure resources to meet these changing needs.
- Maximizing the useful capacity of your infrastructure’s resources.
First Steps
Here’s the scenario: We’re a platform that serves two customers, Orange Labs and Kite AI. As part of our product, we need to use and serve different types of Models, and different types of infrastructure components.Acceptance
We definedocument.generate as an action definition. This allows Arklow to have a way to refer to this body of work, without needing to know exactly what’s being done.
Work can be sent through over API or taken from a connected source (like a queue). Once we get confirmation from Arklow that it’s been accepted, we can trust it will reach us as fast as we are capable of handling it.
Routing
Our particular product might expose information like acustomer_id in some format, whether as a tag, or as a field in the payload body.
Rules inspect the action and select a destination. They can also assign tags or change the destination before delivery, based upon some rules we can create.
For our platform, the final tags include:
Lanes
A lane is one entry point at one destination. Work resolved to the same lane shares occupancy, limits, pacing, and delivery history. A good mental model for lanes is to consider them as per-customer, or per-actor.Partition tags
The inference destination usescustomer_id as its partition tag. All Orange Labs actions sent to that destination share one lane, including actions with different models or regions. Kite AI actions use a separate lane.
Destination scope
A lane belongs to one destination. Orange Labs work routed to a second destination uses a second Orange Labs lane. If both destinations ultimately use the same underlying infrastructure (like a GPU deployment, or a database), a capacity pool represents that shared supply.Admission
The decision to release work comprises multiple different inputs. Admission control explains how these inputs affect release. Admission evaluates the selected lane, and the destination’s capacity pool if available, to know when to release work.Waiting
When a decision to wait has been made, the action entersdispatch_wait before any delivery attempt begins. The record remains durable and is reconsidered as capacity becomes available. A full Orange Labs lane leaves Kite AI’s lane allowance separate; their shared pool remains a second boundary.
Delivery
Settlement
The settlement boundary depends on the destination. For example, a webhook settles from its response or a later acknowledgement. An SDK listener claims work and settles it after processing. A publishing destination settles when its provider accepts the message. Delivery is at least once. Destinations should use the action ID or a stable business identifier for idempotency. Delivery guarantees defines attempts, settlement, and redelivery.Shared infrastructure
Infrastructure metrics
Metric sources add measurements from inside your infrastructure, model deployments, or provider(s). They can reveal shared pressure before things start to degrade and fail. Metric identity stays separate from lane identity. In this example,customer_id=orange_labs selects the end-user lane while model_id=translate-v2 identifies the deployment experiencing pressure.
Capacity pools
The Orange Labs and Kite AI lanes both draw from theinference-us pool. A local lane limit controls one customer’s work at one destination. The pool controls the aggregate supply used by every member lane and destination.
When that supply is constrained, admission can hold a busy contributor while preserving room for other active lanes. Capacity pools define membership, allocation, and budgets.
Scale targets
A scale target connects the pool to thetranslate-v2 deployment. Sustained demand or matching infrastructure evidence can produce a bounded scale change for that resource.
Admission continues holding excess work while capacity provisions. As the destination reports healthier outcomes, lane limits reopen and the durable backlog drains.
Admission control
Waiting, running and unsettled limits, pacing, and caps.
Lanes
Identity modes, partition behavior, advice, and cardinality.
Delivery guarantees
Durable custody, attempts, settlement boundaries, and redelivery.
Capacity pools
Shared supply, allocation, budgets, and attached scale targets.