Skip to content
Effect Days 2026 Get your ticket

DenoClusterHttp

Native Deno HTTP and WebSocket layers for Effect Cluster runners.

layerHttpServer provides the Deno HTTP server used by cluster runners. The main layer builds a sharding layer for HTTP or WebSocket transport, choosing serialization, runner health checks, runner storage, message storage, and optional client-only mode from the supplied options.

3 exports Added in v4.0.0 Source

Layers

layer

Added in v4.0.0 Source

Creates Deno cluster layers for HTTP or WebSocket transport, configuring serialization, storage, runner health, and optional client-only mode.

Signature

declare function layer<ClientOnly extends boolean = false, Storage extends "local" | "sql" | "byo" = never>(options: {
readonly clientOnly?: ClientOnly;
readonly runnerHealth?: "ping" | "k8s";
readonly runnerHealthK8s?: {
readonly labelSelector?: string;
readonly namespace?: string;
};
readonly serialization?: "binary" | "ndjson";
readonly serializationMaxBufferSize?: number | "unbounded";
readonly shardingConfig?: Partial<{
readonly assignedShardGroups: readonly Array<string>;
readonly availableShardGroups: readonly Array<string>;
readonly entityMailboxCapacity: number | "unbounded";
readonly entityMaxIdleTime: Input;
readonly entityMessagePollInterval: Input;
readonly entityRegistrationTimeout: Input;
readonly entityReplyPollInterval: Input;
readonly entityTerminationTimeout: Input;
readonly preemptiveShutdown: boolean;
readonly refreshAssignmentsInterval: Input;
readonly runnerAddress: Option<RunnerAddress>;
readonly runnerHealthCheckInterval: Input;
readonly runnerListenAddress: Option<RunnerAddress>;
readonly runnerShardWeight: number;
readonly sendRetryInterval: Input;
readonly shardLockDisableAdvisory: boolean;
readonly shardLockExpiration: Input;
readonly shardLockRefreshInterval: Input;
readonly shardsPerGroup: number;
readonly simulateRemoteSerialization: boolean;
}>;
readonly storage?: Storage;
readonly transport: "http" | "websocket";
}): ClientOnly extends true ? Layer<Sharding | Runners | "byo" extends Storage ? never : MessageStorage, ConfigError, "local" extends Storage ? never : "byo" extends Storage ? MessageStorage | RunnerStorage : SqlClient> : Layer<Sharding | Runners | "byo" extends Storage ? never : MessageStorage, ServeError | ConfigError, "local" extends Storage ? never : "byo" extends Storage ? MessageStorage | RunnerStorage : SqlClient>

Layer that provides a native Deno HTTP server for cluster runners.

Signature

declare const layerHttpServer: Layer.Layer<HttpPlatform | Etag.Generator | DenoServices | HttpServer, ServeError, ShardingConfig.ShardingConfig>

Layer that provides K8sHttpClient, using a scoped native Deno HTTP client with the Kubernetes service-account CA certificate when it is available.

Signature

declare const layerK8sHttpClient: Layer.Layer<K8sHttpClient.K8sHttpClient>