feat: ✨ add role capabilities to cluster node #944
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Add role-based capabilities to your cluster nodes so
SpawnOncan place Actors exactly where they’ll run best. By tagging nodes with meaningful roles—like compute,io,gpu, oredge—you give the runtime a simple, explicit signal for locality and resource fit. That keeps placement decisions fast and predictable, and it avoids the guesswork that creeps in when every node looks identical on paper but behaves differently under load.Roles cleanly separate concerns: they describe what a node is for, so your Actors can be deployed to where they should live. Instead of scattering lightweight services across heavyweight machines—or vice versa—you steer background workers, latency-sensitive Actors, and bursty jobs to the right hardware tiers. In practice, that means fewer noisy-neighbor issues, better cache hit rates, and less cross-node chatter, because
SpawnOncan honor both intention and topology.It’s a best practice to specify roles from day one. You don’t want a low-power application consuming capacity earmarked for a mission-critical, resource-intensive workload. Even if today’s cluster has a single node type, add a default role now: it costs nothing at runtime, and it future-proofs your deployment model. As you expand, roles let you scale smoothly, run safer canaries, control blast radius, and keep costs in check—all without refactoring placement code or retraining your team.