ExLLM.Infrastructure.CircuitBreaker.BulkheadWorker (ex_llm v0.8.1)

View Source

GenServer that manages bulkhead state for a single circuit.

This GenServer serializes all requests for a given circuit, eliminating race conditions and providing precise concurrency control with queuing.

Summary

Functions

Returns a specification to start this module under a supervisor.

Requests a slot to execute a function. This is the primary entry point.

Updates the configuration for this bulkhead worker.

Builds the name tuple for the Registry.

Functions

child_spec(init_arg)

Returns a specification to start this module under a supervisor.

See Supervisor.

execute(pid, fun, timeout)

Requests a slot to execute a function. This is the primary entry point.

get_metrics(pid)

start_link(opts)

update_config(pid, new_config)

Updates the configuration for this bulkhead worker.

via_tuple(circuit_name)

Builds the name tuple for the Registry.