Hyper.Cluster.Budget (Hyper v0.1.0)

Copy Markdown View Source

Cluster-wide budget telemetry: one Hyper.Node.Budget.NodeState per node, keyed {:node, node()}. A Horde.Registry (DeltaCRDT) with members: :auto.

Each node's Hyper.Node.Budget.Advertiser owns its entry (the registration is tied to that pid, so a dead node's entry disappears cluster-wide). Schedulers read the local replica via all_states/0 — eventually consistent and partition-tolerant.

Summary

Functions

Every node's published NodeState from this node's local replica.

This node's registration key.

The registry name.

Functions

all_states()

@spec all_states() :: [Hyper.Node.Budget.NodeState.t()]

Every node's published NodeState from this node's local replica.

key()

@spec key() :: {:node, node()}

This node's registration key.

name()

@spec name() :: atom()

The registry name.