OxL Reference

12.3 Routing and neighbour discovery

  • A call of service S: if the current node serves S, the call is executed in-process without serialisation; otherwise a node is chosen from the registry — first the same zone, then the lowest load (EWMA of latency and the number of requests in flight), with faulty nodes cut off (circuit breaker).
  • A call of a sharded actor's message goes to the shard owner.
  • API: cluster.self (id, roles, zone), cluster.members(), cluster.find(S) -> List<Node>, cluster.pick(S, by: .LeastLoad, prefer: .SameZone), cluster.on(.RoleChanged) { … }.

See also

Source: docs/spec/oxl-standard.en.md