Geo weighted

Shipped

Blends distance with weight for proximity-aware load distribution.

Example

How Geo weighted decides — the pool is evaluated and the winner is assigned. Each strategy selects differently.

type == "lead"selectedTriggerNew LeadWebhookNearestGeo weightedStrategyae-west4 miae-east12 micentral30 miAssigned
Show the code
// Geo weighted selects from the pool and assigns.
engine.Route(ductor.Route{
Match: `routable.type == "lead"`,
Strategy: "geo_weighted",
Pool: "sales-team",
})
 
// Durable, observable, exactly-once.
decision, err := engine.Dispatch(ctx, routable)

How it works

Weighted selection biased by geographic proximity — closer recipients are favored, but weight still spreads load. Optional geographic module.

Geo-awareWeighted