Zum Inhalt springen
Deutsch

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, ConfigSeedProvider } from 'actor-ts';
const provider = new ConfigSeedProvider({
seeds: ['10.0.0.5:2552', '10.0.0.6:2552', '10.0.0.7:2552'],
});
const seeds = await provider.lookup();
await Cluster.join(system, { host, port, seeds });

Der einfachste Provider für den einfachsten Fall.

interface ConfigSeedProviderSettings {
seeds?: string[]; // explizite Liste
envVar?: string; // Name der Env-Var (CSV)
}

Zwei Wege, das anzugeben:

// Explizit:
new ConfigSeedProvider({ seeds: ['10.0.0.5:2552', '10.0.0.6:2552'] });
// Aus Env (CSV):
new ConfigSeedProvider({ envVar: 'ACTOR_TS_SEEDS' });
// 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.

Drei gute Fits:

  1. Docker Compose — bekannte Service-Namen + Ports; actor-ts-1:2552,actor-ts-2:2552,actor-ts-3:2552 in der Env.
  2. VMs mit festen IPs — drei Produktions-VMs, jede mit stabiler Adresse.
  3. Tests — bekannte Peer-Adressen inline im Test-Setup.