Skip to main content

NATS JetStream

NATS JetStream is supported as an Agent transport only — the Master database must still use a SQL provider. Use it for ultra-low latency, high fan-out, or ephemeral workloads.

Install

dotnet add package JobMaster.NatsJetStream

Configuration

builder.Services.AddJobMasterCluster(config =>
{
config.ClusterId("My-Cluster")
.UsePostgresForMaster("Host=...;Database=...;Username=...;Password=...");

config.AddAgentConnectionConfig("Nats-1")
.UseNatsJetStream("nats://localhost:4222");
});
warning

When using NATS as the Agent transport, set ClusterTransientThreshold to 2 minutes or less. NATS streams have retention limits and acknowledgement timeouts — a larger look-ahead window risks jobs expiring before they are consumed.