kerniq_runtime/lib.rs
1//! Server lifecycle for Kerniq Server, built on Tokio and Hyper.
2//!
3//! * [`server`] — the accept loop with connection limits and bounded
4//! graceful drain,
5//! * [`Shutdown`] / [`os_signal`] — shutdown coordination,
6//! * [`BackgroundTasks`] — tasks tied to the server lifecycle,
7//! * [`runtime`] — the rules for who owns the Tokio runtime.
8//!
9//! Kerniq does not implement an executor or an HTTP protocol: Tokio and
10//! Hyper do that work.
11
12#![warn(missing_docs)]
13#![cfg_attr(docsrs, feature(doc_cfg))]
14
15pub mod runtime;
16pub mod server;
17mod shutdown;
18mod tasks;
19
20pub use server::{ServeOptions, bind, serve};
21pub use shutdown::{Shutdown, os_signal};
22pub use tasks::BackgroundTasks;