Skip to main content

Module websocket

Module websocket 

Source
Expand description

WebSocket source and sink connectors. WebSocket source and sink connectors for LaminarDB.

Provides four connector modes:

  • Source client: Connects to an external WebSocket server (e.g., exchange feeds)
  • Source server: Listens for incoming WebSocket connections (e.g., IoT sensors)
  • Sink server: Fans out streaming query results to connected subscribers
  • Sink client: Pushes streaming query output to an external WebSocket server

§Delivery Guarantees

WebSocket is a non-replayable transport. Source connectors provide at-most-once or best-effort delivery — there are no offsets to seek to on recovery. Sink connectors optionally support a replay buffer for client-side resume, but this is bounded and best-effort.

§Architecture

All WebSocket I/O runs in Ring 2 (Tokio tasks). Parsed Arrow RecordBatch data crosses to Ring 0 via bounded channels.

Re-exports§

pub use backpressure::BackpressureStrategy;
pub use checkpoint::WebSocketSourceCheckpoint;
pub use metrics::WebSocketSourceMetrics;
pub use protocol::ClientMessage;
pub use protocol::ServerMessage;
pub use sink::WebSocketSinkServer;
pub use sink_client::WebSocketSinkClient;
pub use sink_config::SinkFormat;
pub use sink_config::SinkMode;
pub use sink_config::SlowClientPolicy;
pub use sink_config::WebSocketSinkConfig;
pub use sink_metrics::WebSocketSinkMetrics;
pub use source::WebSocketSource;
pub use source_config::EventTimeFormat;
pub use source_config::MessageFormat;
pub use source_config::ReconnectConfig;
pub use source_config::SourceMode;
pub use source_config::WebSocketSourceConfig;
pub use source_config::WsAuthConfig;
pub use source_server::WebSocketSourceServer;

Modules§

backpressure
Backpressure strategies for WebSocket connectors.
checkpoint
WebSocket source checkpoint types.
connection
WebSocket connection management: reconnection, failover, heartbeat.
fanout
Per-client fan-out manager for WebSocket sink server mode.
metrics
WebSocket source connector metrics.
parser
Message parsing: WebSocket frames → Arrow RecordBatch.
protocol
Subscription wire protocol for WebSocket sink server mode.
serializer
Arrow RecordBatch → WebSocket message serialization.
sink
WebSocket sink connector — server mode.
sink_client
WebSocket sink connector — client mode.
sink_config
WebSocket sink connector configuration.
sink_metrics
WebSocket sink connector metrics.
source
WebSocket source connector — client mode.
source_config
WebSocket source connector configuration.
source_server
WebSocket source connector — server mode.

Functions§

register_websocket_sink
Registers the WebSocket sink connector with the given registry.
register_websocket_source
Registers the WebSocket source connector with the given registry.