Discovery provider
Discovery Provider
- ID: Provider name.
- Initialize: One-time setup.
- Register: Register this node with the discovery backend.
- Deregister: Remove this node on shutdown.
- DiscoverPeers: Return peer addresses (
host:portstrings). - Close: Release resources.
discovery/. Pass the provider to ClusterConfig when creating the actor system. See
discovery/selfmanaged for a built-in zero-config provider using UDP broadcast.
Mailbox
Mailbox
- Enqueue: Push a message. Return error when full (bounded mailbox).
- Dequeue: Fetch the next message. Called only from the processing goroutine.
- IsEmpty / Len: Query mailbox state.
- Dispose: Free resources, unblock any waiters.
actor/. Pass via WithMailbox(mailbox) as a SpawnOption. Reference unbounded_mailbox.go and
unbounded_priority_mailbox.go.
Extension (system-wide)
Extension (system-wide)
ID must be unique, alphanumeric, up to 255 chars. Add domain-specific methods to your concrete type. Pass via
WithExtensions(ext) when creating the actor system. Actors access via ctx.Extension(id) and type assertion. See
Extensions and Dependencies for usage.
Dependency (per-actor)
Dependency (per-actor)
WithDependencies(dep) as a SpawnOption, or register
with the actor system via system.Inject(dep) after startup. Actors access via ctx.Dependencies() in PreStart,
Receive, PostStop. See Extensions and Dependencies for usage.