running_process/broker/server/
mod.rs1pub mod admin;
9pub mod backend_endpoint_allocator;
10pub mod backend_launcher;
11pub mod backend_registry;
12pub mod broadcast;
13pub mod connection;
14pub mod control_socket;
15pub mod handoff;
16pub mod hello_handler;
17pub mod hello_router;
18pub mod idle_coord;
19pub mod instance;
20pub mod metrics;
21pub mod perf_guard;
22pub mod recovery;
23pub mod serve;
24pub mod service_def_loader;
25pub mod spawn_coordinator;
26pub mod spawn_wait;
27pub mod trace_context;
28pub mod version_allow_list;
29
30pub use admin::{
31 handle_admin_connection, serve_one_admin_socket, AdminBackend, AdminConnectionError,
32 AdminFrameError, AdminSnapshot, AdminSpawnBudget, ADMIN_PAYLOAD_PROTOCOL, ADMIN_SCHEMA_VERSION,
33};
34pub use backend_endpoint_allocator::{
35 BackendEndpointAllocator, BackendEndpointAllocatorError, DEFAULT_BACKEND_ENDPOINT_ATTEMPTS,
36};
37pub use backend_launcher::{
38 BackendLaunchError, BackendLaunchRequest, BackendLauncher, CommandBackendLauncher,
39 BACKEND_ENV_ENDPOINT_NAMESPACE, BACKEND_ENV_ENDPOINT_PATH, BACKEND_ENV_INSTANCE,
40 BACKEND_ENV_SERVICE_NAME, BACKEND_ENV_SERVICE_VERSION, BACKEND_ENV_TRACEPARENT,
41 BACKEND_ENV_TRACESTATE,
42};
43pub use backend_registry::{BackendKey, BackendRegistry};
44pub use broadcast::{
45 BroadcastAck, BroadcastBackend, BroadcastBackendResponse, BroadcastFailure,
46 BroadcastFailureReason, BroadcastOperation, BroadcastPolicy, BroadcastResult, BroadcastTimeout,
47 LifecycleBroadcastModel, QuiesceReason, DEFAULT_BROADCAST_ACK_TIMEOUT,
48};
49pub use connection::{
50 handle_hello_connection, handle_hello_connection_with,
51 handle_hello_connection_with_peer_policy, local_socket_name, serve_local_socket_connections,
52 serve_local_socket_connections_with, serve_local_socket_connections_with_peer_policy,
53 serve_local_socket_connections_with_policy, serve_one_local_socket,
54 serve_one_local_socket_with, serve_one_local_socket_with_peer_policy, BrokerConnectionError,
55 HelloResponder, PeerCredentialPolicy,
56};
57pub use control_socket::{
58 handle_control_connection_with_peer_policy,
59 serve_control_socket_connections_with_limit_and_policy,
60 serve_control_socket_connections_with_policy, ControlSocketConnectionLimit, ControlSocketError,
61 ControlSocketReply,
62};
63pub use handoff::{
64 AcknowledgedHandoff, ExpiredHandoff, HandoffAckError, HandoffAckRegistry,
65 HandoffAttemptDecision, HandoffAttemptFailure, HandoffAttemptInputs, HandoffFallbackDecision,
66 HandoffFallbackPolicy, HandoffFallbackReason, HandoffFallbackState, HandoffToken,
67 HandoffTokenError, HandoffTokenStore, HandoffTokenStoreConfig, PendingHandoffBackend,
68 PendingHandoffOverflow, PendingHandoffQueue, PendingHandoffQueueConfig,
69 DEFAULT_HANDOFF_ACK_DEADLINE, DEFAULT_HANDOFF_FAILED_ATTEMPTS_PER_WINDOW,
70 DEFAULT_HANDOFF_FAILED_ATTEMPT_WINDOW, DEFAULT_HANDOFF_TOKEN_COLLISION_ATTEMPTS,
71 DEFAULT_HANDOFF_TOKEN_TTL, DEFAULT_MAX_PENDING_HANDOFFS, DEFAULT_MAX_PENDING_HANDOFF_TOKENS,
72 DEFAULT_PENDING_HANDOFF_TTL, HANDOFF_TOKEN_BYTES,
73};
74pub use hello_handler::{
75 HelloHandler, HelloHandlerError, HelloRequest, PeerIdentity, RegisteredBackend,
76};
77pub use hello_router::HelloRouter;
78pub use idle_coord::{
79 BackendIdleCoordinator, BackendIdleDue, BackendIdlePolicy, DEFAULT_BACKEND_IDLE_TIMEOUT,
80};
81pub use instance::{BrokerInstanceError, BrokerInstanceKey};
82pub use perf_guard::{
83 enforce_hello_latency_budget, summarize_hello_latencies, HelloLatencySummary, PerfGuardError,
84 HELLO_P50_BUDGET, HELLO_P99_BUDGET, HELLO_PERF_GUARD_ENV, HELLO_PERF_SAMPLE_COUNT,
85};
86pub use recovery::{
87 BackendRecoveryDecision, BackendRecoveryPolicy, BackendRecoveryRefusalReason,
88 BackendRecoveryState, DEFAULT_RECOVERY_BUDGET_WINDOW, DEFAULT_RECOVERY_RETRY_BACKOFF,
89};
90pub use serve::{
91 build_hello_handler, serve_launching_backends, serve_launching_backends_with_launcher,
92 serve_registered_backend, BrokerLaunchServeConfig, BrokerServeConfig, BrokerServeError,
93};
94pub use service_def_loader::{
95 ensure_service_definition_dir, service_definition_dir, service_definition_path,
96 validate_service_definition_for_service, write_service_definition, ServiceDefinitionError,
97 ServiceDefinitionLoader, SERVICE_DEF_DIR_ENV, SERVICE_DEF_EXTENSION,
98};
99pub use spawn_coordinator::{
100 acquire_spawn_lock, SpawnBeginError, SpawnBudgetConfig, SpawnBudgetSnapshot, SpawnCoordinator,
101 SpawnLockError, SpawnLockFileIdentity, SpawnLockGuard, SpawnOutcome, SpawnPermit,
102 DEFAULT_SPAWN_ATTEMPTS_PER_WINDOW, DEFAULT_SPAWN_BUDGET_WINDOW,
103};
104pub use spawn_wait::{
105 SpawnWaitDecision, SpawnWaitPolicy, SpawnWaitProbe, DEFAULT_SPAWN_WAIT_HARD_CEILING,
106 SPAWN_WAIT_BACKOFF_SEQUENCE,
107};
108pub use trace_context::TraceContext;
109pub use version_allow_list::{check_version_allowed, VersionPolicyBlock};