Config Seed Provider
ConfigSeedProvider liefert eine statische Liste von
Seed-Adressen — aus einem Constructor-Argument oder Env-Vars.
Keine Discovery-Logik; was du konfigurierst, das bekommst du.
import { Cluster, ClusterOptions, ConfigSeedProvider, ConfigSeedProviderOptions } from 'actor-ts';
const configSeedProviderOptions = ConfigSeedProviderOptions.create() .withSeeds(['10.0.0.5:2552', '10.0.0.6:2552', '10.0.0.7:2552']) .withSystemName('my-app');const provider = new ConfigSeedProvider( configSeedProviderOptions,);
const seeds = await provider.lookup();const clusterOptions = ClusterOptions.create() .withHost(host) .withPort(port) .withSeeds(seeds);await Cluster.join(system, clusterOptions);Der einfachste Provider für den einfachsten Fall.
Konfiguration
Abschnitt betitelt „Konfiguration“type ConfigSeedProviderOptionsType = { seeds: string[]; // "system@host:port" oder "host:port" systemName: string; // Standard-Systemname, wenn ein Seed ihn weglässt};Zwei Wege, das anzugeben:
// Explizit:const configSeedProviderOptions = ConfigSeedProviderOptions.create() .withSeeds(['10.0.0.5:2552', '10.0.0.6:2552']) .withSystemName('my-app');new ConfigSeedProvider( configSeedProviderOptions,);
// Aus Env (CSV):seedsFromEnv('ACTOR_TS_SEEDS', 'my-app');// wobei ACTOR_TS_SEEDS='10.0.0.5:2552,10.0.0.6:2552'Wähle, was zu deinem Deployment-Muster passt. Env-Vars sind typisch für Container-Deployments, in denen die Liste aus einer ConfigMap / einem Orchestrator kommt.
Wann du ihn einsetzt
Abschnitt betitelt „Wann du ihn einsetzt“Drei gute Fits:
- Docker Compose — bekannte Service-Namen + Ports;
actor-ts-1:2552,actor-ts-2:2552,actor-ts-3:2552in der Env. - VMs mit festen IPs — drei Produktions-VMs, jede mit stabiler Adresse.
- Tests — bekannte Peer-Adressen inline im Test-Setup.
Wann NICHT
Abschnitt betitelt „Wann NICHT“Wohin als Nächstes
Abschnitt betitelt „Wohin als Nächstes“- Discovery im Überblick — das Gesamtbild.
- DNS Seed Provider — für DNS-basiertes Discovery.
- Kubernetes-API Seed Provider — für K8s-Deployments.
- Aggregate Seed Provider — mehrere Provider kombinieren.
- Joining und Seeds — wie Seeds vom Cluster-Bootstrap konsumiert werden.
